Для получения данных в SQLite применяется команда SELECT. В упрощенном виде она имеет следующий синтаксис:
SELECT список_столбцов FROM имя_таблицы
Прежде всего стоит отметить, что действие команды SELECT не ограничено только получением данных из БД. Так, мы даже можем выполнять с помощью SELECT простейшие вычисления. Например, выполним следующую команду:
SELECT 5 * 6;
или даже набор вычислений:
SELECT 5 * 6, 5 + 6, 5 - 6;
Но обычно команда SELECT применяется именно для полученияданных. Например, пусть ранее была создана следующая таблица users, и в нее добавлены некоторые начальные данные:
CREATE TABLE users ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER ); INSERT INTO users (name, age) VALUES ('Tom', 37), ('Bob', 41), ('Sam', 29);
Получим все объекты из этой таблицы:
SELECT * FROM users;
Символ звездочка * указывает, что нам надо получить все столбцы.
Если необходимо получить данные не из всех, а из каких-то конкретных столбцов, тогда спецификации этих столбцов перечисляются через запятую после SELECT:
SELECT id, name FROM users;
Спецификация столбца необязательно должна представлять его название. Это может быть любое выражение, например, результат арифметической операции. Допустим, у нас есть следующая таблица:
CREATE TABLE products ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, company TEXT NOT NULL, product_count INTEGER DEFAULT 0, price INTEGER ); INSERT INTO products (name, company, product_count, price) VALUES ('iPhone 13', 'Apple', 3, 76000), ('iPhone 12', 'Apple', 2, 51000), ('Galaxy S21', 'Samsung', 2, 56000), ('Galaxy S20', 'Samsung', 1, 41000), ('P40 Pro', 'Huawei', 5, 36000);
Таблица products хранит товары. Столбец name хранит название товара, company - производителя, product_count - количество товара в штуках, а price - цену товара.
Например, получим для каждого товара совокупную цену и для этого выполним следующий запрос:
SELECT name, product_count * price FROM products;
Здесь при выборке будут создаваться два столбца. Причем второй столбец представляет значение столбца product_count, умноженное на значение столбца price.
С помощью оператора AS можно изменить название выходного столбца или определить его псевдоним:
SELECT name AS title, product_count * price AS total_sum FROM products;
Здесь для первого столбца определяется псевдоним title, хотя в реальности он будет представлять столбец name. Второй столбец - total_sum хранит произведение столбцов product_count и price.