티스토리 뷰
SQLite - SELECT Query
SQLite SELECT 문은 결과 테이블 형식으로 데이터를 반환하는 SQLite 데이터베이스 테이블에서 데이터를 가져 오는 데 사용됩니다. 이 결과 테이블은 결과 세트라고도합니다.
다음은 SQLite SELECT 문의 기본 문법입니다.
SELECT column1, column2, columnN FROM table_name;
여기에서 column1, column2 ...는 값을 가져올 테이블의 필드입니다. 필드에서 사용할 수있는 모든 필드를 가져 오려면 다음 구문을 사용할 수 있습니다.
SELECT * FROM table_name;
예제
다음 레코드가있는 COMPANY 테이블을 고려하십시오.
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
다음은 SELECT 문을 사용하여 이러한 모든 레코드를 가져와 표시하는 예제입니다. 여기서 처음 세 명령은 올바르게 형식화 된 출력을 설정하는 데 사용되었습니다.
sqlite>.header on sqlite>.mode column sqlite> SELECT * FROM COMPANY;
마지막으로 다음과 같은 결과를 얻게됩니다.
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
COMPANY 테이블의 선택된 필드 만 가져 오려면 다음 쿼리를 사용하십시오.
sqlite> SELECT ID, NAME, SALARY FROM COMPANY;
위의 쿼리는 다음 결과를 생성합니다.
ID NAME SALARY ---------- ---------- ---------- 1 Paul 20000.0 2 Allen 15000.0 3 Teddy 20000.0 4 Mark 65000.0 5 David 85000.0 6 Kim 45000.0 7 James 10000.0
출력 열 너비 설정
때로는 표시 할 열의 기본 너비로 인해 발생하는 .mode 열의 경우 잘린 출력과 관련된 문제가 발생합니다. 할 수있는 일은 다음과 같이 .width num, num .... 명령을 사용하여 열 표시 가능 열 너비를 설정할 수 있습니다.
sqlite>.width 10, 20, 10 sqlite>SELECT * FROM COMPANY;
위의 .width 명령은 첫 번째 열 너비를 10으로 설정하고 두 번째 열 너비를 20으로 설정하고 세 번째 열 너비를 10으로 설정합니다. 마지막으로 위 SELECT 문은 다음 결과를 제공합니다.
ID NAME AGE ADDRESS SALARY ---------- -------------------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
스키마 정보
모든 dot 명령은 SQLite 프롬프트에서 사용할 수 있으므로 SQLite로 프로그래밍하는 동안 sqlite_master 테이블과 함께 다음 SELECT 문을 사용하여 데이터베이스에 생성 된 모든 테이블을 나열합니다.
sqlite> SELECT tbl_name FROM sqlite_master WHERE type = 'table';
testDB.db에 COMPANY 테이블 만 있다고 가정하면 다음 결과가 생성됩니다.
tbl_name ---------- COMPANY
다음과 같이 COMPANY 테이블에 대한 완전한 정보를 나열 할 수 있습니다 -
sqlite> SELECT sql FROM sqlite_master WHERE type = 'table' AND tbl_name = 'COMPANY';
testDB.db에 COMPANY 테이블 만 있다고 가정하면 다음 결과가 생성됩니다.
CREATE TABLE COMPANY( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL )