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

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



Я знаю, что для инструкции ORDER BY существует альтернативный синтаксис. Расскажите о нем.

Перепишем этот запрос с использованием альтернативного синтаксиса:



То есть вместо названий колонок таблиц в инструкции ORDER BY мы используем порядковый номер колонки в нашем запросе – у CITYCODE он равен 1, у CITYNAME 2, у PEOPLES 3.

Можно ли отсортировать запрос по полю, которого нет в запросе, но которое есть в таблице после инструкции FROM?

Да, синтаксис SQL это допускает, и вот пример:


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

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

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

Шаг 14. Ограничение на количество выбранных строк ROWNUM, TOP (n)

Введение

Иногда запросы строятся таким образом, что на экран сразу выводится множество строк.

А что если нам необходимо ограничить количество строк выводимой информации, то есть из десятков тысяч строк нам достаточно нескольких строк для анализа информации?

Теория и практика

Для решения этой задачи в разных диалектах языка SQL используются разные синтаксические конструкции: в MS SQL это конструкция TOP, в ORACLE есть специальный предикат ROWNUM, в PostgreSql, MYSQL для этого существует конструкция LIMIT.


Разберем диалект SQL ORACLE.

Конструкция ROWNUM позволит ограничить количество выводимых строк на заданную величину.

Синтаксис


Примеры

Вывести первые 5 строк из таблицы AUTO.



Рисунок 29. Запрос с ограничением строк (первые 5)


Вывести первые 5 строк из таблицы CITY, где население (PEOPLES) городов больше 300 000.



Рисунок 30. Выбрать первые 5 строк, запрос города: население больше 300 000

Важные замечания

Если использовать ROWNUM совместно с сортировкой, то необходимо прибегнуть к специальному приему, иначе ROWNUM не будет работать как нужно и запрос вернет неверные данные.

Правильно следует написать так:



Вывести первые 5 автомобилей, отсортированных по дате производства (RELEASEDT).

Ошибочный запрос:



Правильный запрос:


Вопросы учеников

Покажите, как ограничивать вывод строк в MYSQL, MS SQL и PostgreSQL.

Разберемся на примере.

Вывести первые 5 строк из таблицы CITY, где население (PEOPLES) городов больше 3000.

ORACLE SQL



MY SQL



MS SQL



PostgreSQL


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

1. Поясните, как использовать ROWNUM с сортировкой в SQL-запросе.

2. Выведите на экран первые 3 строчки из таблицы CITY.

3. Выведите на экран первые 4 строчки из таблицы CITY, отсортированные по количеству населения (PEOPLES).

4. Выведите на экран данные из таблицы MAN.

Шаг 15. Вставка данных в таблицу – INSERT

Введение

Ранее мы с вами изучили, как создавать таблицы и изменять структуру таблиц, а также как извлекать данные из таблиц на экран с помощью команды SELECT. Мы выбирали данные, которые уже были в таблицах. Настало время узнать о том, как добавить необходимые данные в таблицу.

Теория и практика

Для добавления данных в SQL используется команда INSERT.

Команда INSERT существует в SQL в двух вариантах.

Во-первых, для добавления заданных значений – VALUES.

Синтаксис



Важно помнить, что количество колонок в скобках и количество добавляемых значений должны соответствовать друг другу.

Также очень важно, чтобы колонки и значения соответствовали по типу данных.


Примеры

Добавим новые сведения о человеке в таблицу MAN:



В таблицу MAN добавлена строка о человеке с номером телефона «120120120», именем «Максим», фамилией «Леонидов», кодом города 2, ему 25 лет (PHONENUM, FIRSTNAME, LASTNAME, CITYCODE, YEAROLD).

Добавим сведения о новой машине в таблицу AUTO:



В таблицу AUTO добавлена строка о авто c номером «128877655» марки «LADA», цвет «КРАСНЫЙ», дата выпуска «2001-01-01», «123114444».


Второй вариант, для добавления из запроса SELECT

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

Синтаксис:



Примеры

В таблицу CITY1 добавить все строки из CITY, где население больше миллиона человек.



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

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

Omert@. Руководство по компьютерной безопасности и защите информации для Больших Боссов
Omert@. Руководство по компьютерной безопасности и защите информации для Больших Боссов

Увы, друг мой, защита твоей информации - или хотя бы четкое понимание того, что это такое и как подобная защита должна строиться - это Твое Личное Дело! Не Cosa Nostra (хотя твои проблемы могут стать и Нашим Делом тоже), а Cosa Roba - Твое Дело!  Я знаю, что ты солидный человек, который привык платить, чтобы за него решали проблемы. Однако есть проблемы, которые за тебя никто не решит, - даже за очень большие деньги. Например, заниматься любовью со своей женой должен ты сам. Но кто тебе сказал, что защита твоей информации - это менее интимное дело, и его можно поручить постороннему?  Первая книга по безопасности для Менеджеров, а не для ботаников-компьютерщиков, информации от широко неизвестного благодаря своей репутации эксперта международного класса. Только благодаря ей Большой Босс сможет понять, каким образом он сможет чувствовать себя хотя бы в относительной безопасности!  Ты должен сам знать, что такое безопасность информации! Ни один нанятый специалист не решит это за тебя!  Если ты нанимаешь студента-компьютерщика за двести баксов в месяц и совершенно серьезно считаешь его специалистом по информационной безопасности, - не понятно, как ты вообще смог стать менеджером подобного уровня.

Алекс Экслер , Карл Шкафиц

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT
Хакеры: Герои компьютерной революции
Хакеры: Герои компьютерной революции

Как-то незаметно получилось, что за последние годы достаточно большое количество значений слова «хакер»: «компьютерный гений — озорник — любитель — специалист — исследователь» постепенно сжалось до «компьютерного хулигана — преступника». Mожно только «порадоваться» за труды журналистов околокомпьютерных и не очень изданий во всем мире, а также голливудских режиссеров, прививших умам неискушенных сограждан именно такое видение мира.Но, к счастью, так было не всегда. Эта книга позволяет вернуться к тем дням, когда все это еще только начиналось. К тем чистым и немного наивным ощущениям первоткрывателей, которым в руки попали удивительные игрушки, гигантские по размерам и стоимости...Как начинал Билл Гейтс? Как зарождался Apple? Замечательная коллекция персонажей шумно исследующих киберпространство, в котором до них еще никто не бывал, будет интересна не только специалистам но и простому читателю.

Стивен Леви

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT
Внедрение SAP R/3: Руководство для менеджеров и инженеров
Внедрение SAP R/3: Руководство для менеджеров и инженеров

Это практическое всеобъемлющие руководство было написано специально для тех, кто выбирает стратегию внедрения SAP в организации. «Внедрение SAP R/3: руководство для менеджеров и инженеров» объясняет, что означает понятие «эпоха ERP», почему информация является одним из ключевых ресурсов предприятия, как SAP способствует росту конкурентоспособности компании, а также преимущества методологии ASAP в планировании и использовании ресурсов при внедрении SAP. Подход к ERP-системам, используемый в данной книге, будет крайне полезен менеджерам и специалистам, которым необходимо представить высшему руководству своих компаний основания для внедрения SAP; кроме того, данная книга будет весьма полезной тем, кто занимается проектами SAP или планирует такой проект в ближайшем будущем. Для тех читателей, кто непосредственно занят в проектах SAP, эта книга станет надежным руководством и поможет внести существенный вклад в развитие проекта.

Вивек Кале

Прочая компьютерная литература / Книги по IT