標籤:
http://www.runoob.com/sqlite/sqlite-select.html
SQLite Select 語句
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.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0
下面是一個執行個體,使用 SELECT 語句擷取並顯示所有這些記錄。在這裡,前三個命令被用來設定正確格式化的輸出。
sqlite>.header onsqlite>.mode columnsqlite> SELECT * FROM COMPANY;
最後,將得到以下的結果:
ID NAME AGE ADDRESS SALARY---------- ---------- ---------- ---------- ----------1 Paul 32 California 20000.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0
如果只想擷取 COMPANY 表中指定的欄位,則使用下面的查詢:
sqlite> SELECT ID, NAME, SALARY FROM COMPANY;
上面的查詢會產生以下結果:
ID NAME SALARY---------- ---------- ----------1 Paul 20000.02 Allen 15000.03 Teddy 20000.04 Mark 65000.05 David 85000.06 Kim 45000.07 James 10000.0
設定輸出資料行的寬度
有時,由於要顯示的列的預設寬度導致 .mode column,這種情況下,輸出被截斷。此時,您可以使用 .width num, num.... 命令設定顯示列的寬度,如下所示:
sqlite>.width 10, 20, 10sqlite>SELECT * FROM COMPANY;
上面的 .width 命令設定第一列的寬度為 10,第二列的寬度為 20,第三列的寬度為 10。因此上述 SELECT 語句將得到以下結果:
ID NAME AGE ADDRESS SALARY---------- -------------------- ---------- ---------- ----------1 Paul 32 California 20000.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0
Schema 資訊
因為所有的點命令只在 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)
SQLite使用教程9 Select 語句