SQLite Где раздел
ИНЕКЕ SQLite, чтобы указать , чтобы получить данные из одной или нескольких таблиц в условиях.
Если вы соответствуете данное условие истинно (истина), из таблицы, чтобы вернуть определенное значение. Вы можете использовать условие WHERE для фильтрации записей, просто получить необходимые записи.
ИНЕКЕ используется не только в ЗЕЬЕСТ, он также может быть использован в UPDATE, DELETE заявление, и так далее, которые мы будем изучать в последующих главах.
грамматика
Основной синтаксис ЗЕЬЕСТ с пунктом WHERE в SQLite следующим образом:
ВЫБОР column1, column2, columnN FROM table_name WHERE [состояние]
примеров
Можно также использовать сравнения или логические операторы определены критерии, такие как>, <, =, LIKE, NOT, и так далее. Предположим, что таблица Компания имеет следующие записи:
ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000,0 3 Teddy 23 Норвегия 20000,0 4 Mark 25 Рич-Mond 65000,0 5 David 27 Texas 85000,0 6 Ким 22 Юго-зал 45000,0 7 Джеймс 24 Хьюстон 10000,0
Следующий пример демонстрирует использование SQLite логических операторов. Ниже перечислены ЗЕЬЕСТ AGE 25и больше или равно больше или равную заработную плату для всех записей 65000.00:
SQLite> SELECT * FROM компании, где возраст> = 25 И ЗАРПЛАТА> = 65000; ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 4 Mark 25 Рич-Mond 65000,0 5 David 27 Texas 85000,0
Ниже перечислены ЗЕЬЕСТ AGE 25или больше или равно больше или равную заработную плату для всех записей 65000.00:
SQLite> SELECT * FROM компании, где возраст> = 25 ИЛИ ЗАРПЛАТА> = 65000; ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000,0 4 Mark 25 Рич-Mond 65000,0 5 David 27 Texas 85000,0
Ниже перечислены ЗЕЬЕСТ возраст не NULL для всех записей, все записи показали, это означает, что никаких записей возраст не равен NULL:
SQLite> SELECT * FROM компании, где AGE IS NOT NULL; ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000,0 3 Teddy 23 Норвегия 20000,0 4 Mark 25 Рич-Mond 65000,0 5 David 27 Texas 85000,0 6 Ким 22 Юго-зал 45000,0 7 Джеймс 24 Хьюстон 10000,0
Символ, следующий выберите Списки оператор Имя в 'Ki' все записи стали, 'Ki' нет предела после того, как:
SQLite> SELECT * FROM компании, где имя, как 'Ki%'; ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 6 Ким 22 Юго-зал 45000,0
Символ, следующий выберите Списки оператор Имя в 'Ki' все записи стали, 'Ki' нет предела после того, как:
SQLite> SELECT * FROM компании, где NAME GLOB 'Ki *'; ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 6 Ким 22 Юго-зал 45000,0
Следующий оператор ЗЕЬЕСТ перечисляет все записи AGE значение 25 или 27:
SQLite> SELECT * FROM компании, где возраст в (25, 27); ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 2 Allen 25 Texas 15000,0 4 Mark 25 Рич-Mond 65000,0 5 David 27 Texas 85000,0
В следующем ЗЕЬЕСТ перечислены значения AGE не является ни 25, ни 27 из всех записей:
SQLite> SELECT * FROM компании, где AGE NOT IN (25, 27); ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 3 Teddy 23 Норвегия 20000,0 6 Ким 22 Юго-зал 45000,0 7 Джеймс 24 Хьюстон 10000,0
В следующем ЗЕЬЕСТ перечислены значения возраста все записи в диапазоне от 25 до 27 лет:
SQLite> SELECT * FROM компании, где в возрасте между 25 и 27; ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 2 Allen 25 Texas 15000,0 4 Mark 25 Рич-Mond 65000,0 5 David 27 Texas 85000,0
Следующий оператор ЗЕЬЕСТ использует подзапросов SQL, подзапрос найти ЗАРПЛАТУ> поле AGE для всех записей с 65,000, за ИНЕКЕ используется в сочетании с EXISTS оператора, перечисляет внешнее присутствие AGE запрос в возврате подзапрос результаты всех записей:
SQLite> SELECT ВОЗРАСТ ОТ КОМПАНИИ ГДЕ СУЩЕСТВУЕТ (SELECT Возраст от компании, где ЗАРПЛАТА> 65000); AGE ---------- 32 25 23 25 27 22 24
Следующий оператор ЗЕЬЕСТ использует SQL подзапросы, подзапрос найти ЗАРПЛАТУ> AGE поле для всех записей с 65,000, за ИНЕКЕ и> используются вместе, результаты запроса возвращает список внешнего запроса больше, чем суб-AGE Все записи в возрасте:
SQLite> SELECT * FROM КОМПАНИИ ГДЕ AGE> (SELECT Возраст от компании, где ЗАРПЛАТА> 65000); ID ИМЯ ВОЗРАСТ АДРЕС ЗАРПЛАТА ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0