15. Расскажите про операторы IN, BETWEEN, LIKE.
UNKNOWN[NOT] IN — позволяет узнать входит ли проверяемое значение столбца в
списокопределённыхзначений
SELECT *
FROM Salespeople
WHERE city IN ( 'Barcelona', 'London' );
SELECT *
FROM Salespeople
WHERE city = 'Barcelona'
OR city = 'London';
[NOT] BETWEEN min AND max — позволяетузнатьрасположеноли проверяемое значение столбца в интервале между min и max. BETWEEN может работать с символьными полями в терминах эквивалентов ASCII. Это означает что вы можете использовать BETWEEN чтобы выбирать ряд значений из упорядоченных по алфавиту значений.
SELECT *
FROM Salespeople
WHERE ( comm BETWEEN .10, AND .12 )
AND NOT comm IN ( .10, .12 );
SELECT *
FROM Customers
WHERE cname BETWEEN 'A' AND 'G';
[NOT] LIKE шаблон [ESCAPE символ] — позволяет узнать соответствует ли строка (только CHAR или VARCHAR) определённому шаблону. В качестве условия используются символы трафаретные символы (wildkards)
Трафаретные символы:
- символ подчеркивания (_), который можно применять вместо любого единичного символа в проверяемом значении
- символ процента (%) заменяет последовательность любых символов (число символов в последовательности может быть от 0 и более) в проверяемом значении.
ESCAPE-символ используется для экранирования трафаретных символов. Например, вы хотите получить идентификаторы задач, прогресс которых равен 3%:
SELECT job_id FROM Jobs
WHERE progress LIKE '3!%' ESCAPE '!';
Предыдущий вопрос: 14. Что такое EXISTS?
Следующий вопрос: 16. Что делает оператор MERGE? Какие у него есть ограничения?
Все вопросы по теме: список
Все темы: список
Вопросы/замечания/предложения/нашли ошибку: напишите мне