English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
SQLite SELECT
запросы используются для получения данных из таблицы базы данных SQLite, данные возвращаются в виде таблицы результатов. Эти таблицы результатов также называютсярезультатные наборы
.
Ниже приведен базовый синтаксис запроса SELECT для SQLite.
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 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
Иногда,.mode column
Из-за того, что по умолчанию ширина столбцов, которые необходимо отобразить, могут возникнуть проблемы с обрезкой вывода. Вы можете сделать следующее:.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 вы будете использовать следующую SELECT-запрос и список основных таблиц SQLite, чтобы перечислить все таблицы, созданные в базе данных.
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)