Oracle SQL. 100 шагов от новичка до профессионала. 20 дней новых знаний и практики - страница 16
Последовательность логических операндов может комбинироваться.
Примеры
Разберем действие данных логических операндов на примерах:
Выбрать из таблицы AUTO машины (*) BMW синего цвета (COLOR).
Рисунок 18. Запрос на синие авто BMW
Выбрать из таблицы MAN имена (FIRSTNAME) и фамилии (LASTNAME) людей, которым больше 27 лет и меньше 41 года (YEAROLD).
Рисунок 19. Запрос к MAN, где возраст больше 27 и меньше 41
Выбрать из таблицы MAN имена и фамилии людей с именем (FIRSTNAME) Андрей, которым больше 27 лет (YEAROLD).
Рисунок 20. Запрос к таблице MAN: Андрей, возраст больше 27 лет
Выбрать из таблицы MAN имена (FIRSTNAME) и фамилии (LASTNAME) людей, которым не больше 27 лет (YEAROLD).
Рисунок 21. Запрос к таблице MAN: Андрей, возраст больше 27 лет
Выбрать из таблицы MAN имена (FIRSTNAME) и фамилии (LASTNAME) людей с именем Андрей или Алексей.
Рисунок 22. Запрос к таблице MAN: Андрей и Алексей
Выбрать из таблицы CITY города (*) с населением (PEOPLES) 400, 500 тысяч жителей.
Рисунок 23. Запрос: города с населением 300 и 400 тысяч
Выбрать из таблицы CITY города (*) с населением (PEOPLES) не 400, 500 тысяч жителей.
Рисунок 24. Запрос: города с населением не 300 и не 400 тысяч
Важные замечания
Несколько условий можно объединять скобками, например из таблицы MAN нам необходимо вывести те строки, где людям 25 или 28 лет с именем Иван. Это можно сделать с помощью следующего запроса:
Очень важно понимать отличие AND от OR, например выведите авто с марками LADA и BMW – в этом запросе необходимо использовать инструкцию OR и ни в коем случае не AND.
Вопросы учеников
Можно ли неравенство заменить на инструкцию NOT?
Как поменять несколько условий, перечисленных после WHERE в SQL-запросе, на обратные?
Вопрос не очень понятен, но предположим, у нас есть запрос, который возвращает все строки из таблицы AUTO с марками BMW и LADA.
Если необходимо посмотреть авто не BMW и LADA, то запрос обретет следующий вид:
Контрольные вопросы и задания для самостоятельного выполнения
1. Сколько строк вернет запрос?
2. Выберите из таблицы CITY (*) город, где 200 тысяч жителей (PEOPLES); город с наименованием Москва (CITYNAME).
3. Выберите из таблицы CITY города с населением (PEOPLES) не 500 тысяч жителей.
4. Выберите из таблицы AUTO (*) все синие AUDI (COLOR, MARK).
5. Выберите из таблицы AUTO номера (regnum) и марки (MARK) всех VOLVO и BMW.
6. Выберите из таблицы MAN имена, фамилии (FIRSTNAME, LASTNAME) и возраст людей (YEAROLD), которым больше 29 и меньше 35 лет.
Шаг 13. Сортировка результатов запросов
Введение
Данные, выводимые с помощью запроса SELECT, часто необходимо сортировать по одному или нескольким выводимым колонкам.
Для этого в языке SQL есть специальный оператор ORDER BY, который используется в команде SELECT и пишется в конце запроса. Для того чтобы изменить порядок сортировки на обратный, используется ключевое слово DESC.
Теория и практика
ORDER BY используется для сортировки выводимых данных по заданным колонкам: от большего к меньшему, и наоборот.
Текстовые данные будут отсортированы от А до Я или же от Я до А – при использовании ключевого операнда DESC.
Числовые данные сортируются от меньшего числа к большему числу и от большего числа к меньшему при использовании ключевого операнда DESC.
Данные DATE также: от меньшей даты к большей, и наоборот.