본문 바로가기
ETC

[ETC] 로또 당첨 번호 데이터베이스 만들기

by 선인장 🌵 2022. 3. 5.
728x90
728x90

로또 당첨 번호 데이터베이스 만들기

이전에 로또 당첨 번호의 모든 회차를 다운로드하는 방법에 대해서 알아본 적이 있다.

[ETC] 로또 당첨 번호 모든 회차 다운로드 하기

로또 당첨 번호 모든 회차 다운로드 저번 주 로또를 우연히 구매하고선 모든 회차의 당첨 번호를 다운로드할 수는 없을까 생각을 해보다가 현재 로또를 발행하고 있는 동행복권에서 다운로

happylie.tistory.com

근데 해당 데이터는 Excel(엑셀)로 되어 있어서 활용하는 부분에서 쉽지 않아 차라리 데이터베이스화 시켜서 사용해보고자 한다.

그럼 간단히 데이터베이스를 어떻게 했는지 알아보도록 하자.

[ETC] 로또 당첨 번호 데이터베이스 만들기

728x90

1. 사용할 데이터베이스 선택

우선적으로 어떤 데이터베이스를 사용할 것인가 고민하였다.

데이터베이스 시스템으로는 MySQL, PostgreSQL, SQLite 등 여러 가지가 있어서 어떤 데이터베이스를 사용할지를 고민하였다.

해당 데이터의 양의 크기가 크지 않음에 따라서 제일 가볍고, 간편 & 간단하고 여러 개발 언어에서 사용하기 쉽도록 SQLite를 사용하기로 결정하였다.

sqlite에 대해서는 아래 링크를 통해서 한번 확인해보도록 하자.

SQLite Home Page

SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine. SQLite is the most used database engine in the world. SQLite is built into all mobile phones and most computers and comes bu

www.sqlite.org

2. Tool 소개

MacOS에서 SQLite를 사용하는 방법은 여러 가지 있지만 좀 더 손쉽게 사용하기 위해서 "DB Browser for SQLite"라는 Tool을 사용하였다.

"DB Browser for SQLite"는 현재 여러 OS에서 설치하여 사용 가능한 Tool이며, SQLite 3.34.1 기반으로 사용하고 있다.

2. Tool 소개
2. Tool 소개

DB Browser for SQLite

DB Browser for SQLite The Official home of the DB Browser for SQLite Screenshot What it is DB Browser for SQLite (DB4S) is a high quality, visual, open source tool to create, design, and edit database files compatible with SQLite. DB4S is for users and dev

sqlitebrowser.org

GitHub - sqlitebrowser/sqlitebrowser: Official home of the DB Browser for SQLite (DB4S) project. Previously known as "SQLite Dat

Official home of the DB Browser for SQLite (DB4S) project. Previously known as "SQLite Database Browser" and "Database Browser for SQLite". Website at: - GitHub - sqlitebrowser...

github.com

728x90

3. 테이블 생성

이제 "DB Browser for SQLite" Tool을 이용해서 테이블을 생성하였다.

먼저 맨 위에서 "새 데이터베이스"를 선택 후 새로운 데이터베이스를 생성하도록 하자.

여기서 데이터베이스 이름은 "lotto_data.db"로 생성하였다.

테이블 이름은 "tb_lott_list"로 각 컬럼은 아래와 같이 생성하였다.

  • round : 회차
  • date : 회차 추첨일
  • 1st : 1번째 번호
  • 2nd : 2번째 번호
  • 3rd : 3번째 번호
  • 4th : 4번째 번호
  • 5th : 5번째 번호
  • 6th : 6번째 번호
  • bonus : 보너스볼 번호
# Table Info

CREATE TABLE "tb_lotto_list" (
	"round"	INTEGER,
	"date"	TEXT,
	"1st"	INTEGER,
	"2nd"	INTEGER,
	"3rd"	INTEGER,
	"4th"	INTEGER,
	"5th"	INTEGER,
	"6th"	INTEGER,
	"bonus"	INTEGER
	PRIMARY KEY("round")
)

3. 테이블 생성
3. 테이블 생성
3. 테이블 생성
3. 테이블 생성
3. 테이블 생성
3. 테이블 생성

4. 데이터 입력

테이블을 생성하고 1회 차부터 1004 회차까지 데이터를 확인하여 각 항목에 맞춰 데이터를 입력해주었다.

# 각 회차별 데이터 입력

INSERT INTO tb_lotto_list ('round', 'date', '1st', '2nd', '3rd', '4th', '5th', '6th', 'bonus') 
values (1, '2002.12.7', 10, 23, 29, 33, 37, 40, 16);

4. 데이터 입력
4. 데이터 입력

5. 데이터 확인

이제 입력된 데이터를 확인해보자.

5. 데이터 확인
5. 데이터 확인

1회 차에서 1004회 차까지 각 칼럼 별로 들어가 있는 걸 확인할 수 있다.

간단히 Python을 이용해서 데이터를 확인해보도록 하자.

5. 데이터 확인
5. 데이터 확인

역시 1회 차에서 1004회 차까지 각 데이터 및 총 데이터 수도 확인할 수 있다.

이제 이 데이터베이스 파일을 이용해서 여러 가지를 활용할 수 있다.

6. Github

이제 해당 데이터베이스를 모든 사람이 사용할 수 있도록 Github에 업로드 해 놓도록 하겠다.

GitHub - happylie/lotto_data: 로또 당첨 번호 DB

로또 당첨 번호 DB. Contribute to happylie/lotto_data development by creating an account on GitHub.

github.com

매주 로또 당첨 번호 발표날 신규 회차 데이터를 업데이트 하도록 하겠다.(이건 매번 하기 그러니 자동화 시스템으로 언능 만들어야 겠다... )

그럼 이 데이터를 이용해서 좋은 결과가 있으시기를 기원 합니다. 🙏🏻🙏🏻🙏🏻

728x90
728x90


🌵댓글

 

loading