Читаем Oracle SQL. 100 шагов от новичка до профессионала. 20 дней новых знаний и практики полностью

Рисунок 22. Запрос к таблице MAN: Андрей и Алексей

Выбрать из таблицы CITY города (*) с населением (PEOPLES) 400, 500 тысяч жителей.

Рисунок 23. Запрос: города с населением 300 и 400 тысяч

Выбрать из таблицы CITY города (*) с населением (PEOPLES) не 400, 500 тысяч жителей.

Рисунок 24. Запрос: города с населением не 300 и не 400 тысяч

<p>Важные замечания</p>

Несколько условий можно объединять скобками, например из таблицы MAN нам необходимо вывести те строки, где людям 25 или 28 лет с именем Иван. Это можно сделать с помощью следующего запроса:

Очень важно понимать отличие AND от OR, например выведите авто с марками LADA и BMW – в этом запросе необходимо использовать инструкцию OR и ни в коем случае не AND.

<p>Вопросы учеников</p>

Можно ли неравенство заменить на инструкцию NOT?

Да, в большинстве запросов можно так сделать.Например, запросыидентичны.

Как поменять несколько условий, перечисленных после WHERE в SQL-запросе, на обратные?

Вопрос не очень понятен, но предположим, у нас есть запрос, который возвращает все строки из таблицы AUTO с марками BMW и LADA.

Если необходимо посмотреть авто не BMW и LADA, то запрос обретет следующий вид:

<p>Контрольные вопросы и задания для самостоятельного выполнения</p>

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 лет.

<p>Шаг 13. Сортировка результатов запросов</p><p>Введение</p>

Данные, выводимые с помощью запроса SELECT, часто необходимо сортировать по одному или нескольким выводимым колонкам.

Для этого в языке SQL есть специальный оператор ORDER BY, который используется в команде SELECT и пишется в конце запроса. Для того чтобы изменить порядок сортировки на обратный, используется ключевое слово DESC.

<p>Теория и практика</p>

ORDER BY используется для сортировки выводимых данных по заданным колонкам: от большего к меньшему, и наоборот.

Текстовые данные будут отсортированы от А до Я или же от Я до А – при использовании ключевого операнда DESC.

Числовые данные сортируются от меньшего числа к большему числу и от большего числа к меньшему при использовании ключевого операнда DESC.

Данные DATE также: от меньшей даты к большей, и наоборот.

Синтаксис

Где таблица – наименование таблицы, условия выборки которой могут быть объединены логическими операндами.

Примеры запросов

Выведите все записи из таблицы AUTO, отсортируйте автомобили по марке (MARK).

Рисунок 25. Выбрать из таблицы AUTO, отсортировать по марке

Выведите все записи из таблицы AUTO, отсортируйте автомобили по дате создания и цвету в обратном порядке (RELEASED, MARK).

Рисунок 26. Запрос к таблице AUTO: сортировка по дате и цвету авто

Сортировка по двум колонкам RELEASED от меньшей даты к большей, MARK от A—Z.

Выберите только те записи из таблицы MAN, где возраст (YEAROLD) человека больше 30 лет; отсортируйте выбранные записи по возрасту, сортировку произведите в обратном порядке.

Рисунок 27. Выбор из таблицы MAN, где возраст больше 30 лет; сортировка по году выпуска

Пример использования ORDER BY и WHERE

Выберите наименования городов (CITYNAME) и население (PEOPLES) из таблицы CITY, отсортируйте выбранные данные в обратном порядке по наименованию города и количеству населения (PEOPLES).

Рисунок 28. Запрос к CITY: сортировка по названию и населению в обратном порядке

<p>Важные замечания</p>

Следует пояснить, как работает сортировка по нескольким колонкам.

Сначала данные сортируются по первой колонке в инструкции ORDER BY, затем уже в рамках этой сортировки данные сортируются по второму признаку, по второй колонке из инструкции ORDER BY, затем третьей и так далее.

Команда сортировки ORDER BY выполняется в запросе последней, сортируется итоговое выражение запроса.

Это важная информация, и она пригодится нам в дальнейшем, при создании сложных SQL-запросов.

<p>Вопросы учеников</p>

Как сделать, если я хочу одну колонку отсортировать по возрастанию, а две другие по убыванию?

Давайте рассмотрим пример.

Перейти на страницу:

Похожие книги

1С: Управление небольшой фирмой 8.2 с нуля. 100 уроков для начинающих
1С: Управление небольшой фирмой 8.2 с нуля. 100 уроков для начинающих

Книга предоставляет полное описание приемов и методов работы с программой "1С:Управление небольшой фирмой 8.2". Показано, как автоматизировать управленческий учет всех основных операций, а также автоматизировать процессы организационного характера (маркетинг, построение кадровой политики и др.). Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, формировать разнообразные отчеты, выводить данные на печать. Материал подан в виде тематических уроков, в которых рассмотрены все основные аспекты деятельности современного предприятия. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов. Все приведенные в книге примеры и рекомендации основаны на реальных фактах и имеют практическое подтверждение.

Алексей Анатольевич Гладкий

Экономика / Программное обеспечение / Прочая компьютерная литература / Прочая справочная литература / Книги по IT / Словари и Энциклопедии