Оценить:
 Рейтинг: 0

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

Год написания книги
2019
<< 1 ... 10 11 12 13 14 15 16 17 18 ... 23 >>
На страницу:
14 из 23
Настройки чтения
Размер шрифта
Высота строк
Поля
Логично предположить, что если у нас есть данные, нам необходимо их выбирать из базы, обрабатывать и выводить на экран в удобном, понятном, читаемом виде.

В нашей рабочей схеме уже есть три таблицы с данными – это таблицы AUTO, CITY, MAN.

Напомню, что в таблице MAN хранятся сведения о покупателях: их имена, их возраст, CITY – это данные о городах, а таблица AUTO содержит сведения об автомобилях некоторого автосалона.

Если человек приобретает автомобиль, то в таблице AUTO в колонке PHONEnum выставляется номер телефона человека, который приобрел машину.

Для извлечения данных из базы и вывода этих данных на экран используются команды, называемые запросами к базе данных, специальная команда SQL – SELECT. Эта команда является наиболее часто используемой командой в языке SQL и постоянно применяется на практике.

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

Начнем с самого легкого запроса, рассмотрим синтаксис самого простого оператора SELECT:

SELECT * FROM TABLE_NAME

Здесь TABLE_NAME – имя таблицы, из которой мы запрашиваем данные.

Символ * означает, что мы выводим на экран данные из всех колонок.

Откройте тестовую среду и выполните запрос

SELECT * FROM CITY;

Рисунок 7. Запрос из таблицы CITY

На экран выведены названия колонок в первой строке, а также данные в каждой колонке из таблицы CITY.

А теперь другой вариант синтаксиса такого же простого запроса SQL:

SELECT column_NAME1, column_NAME1, column_NAMEn FROM TABLE_NAME

В этом варианте вместо звездочки используются наименования колонок и на экран будут выведены только перечисленные колонки из заданной в поле FROM таблицы.

Пример (выполните в нашей тестовой среде):

SELECT CITYCODE, CITYNAME FROM CITY;

Рисунок 8. Запрос к таблице CITY по колонкам CITYCODE, CITYNAME

Результат запроса – на экран выведены только те две колонки, которые мы указали после оператора SELECT.

Существует и другой вариант синтаксиса для SQL-запросов:

SELECT TABLE_NAME.* FROM TABLE_NAME

или

SELECT TABLE_NAME. column_NAME1, TABLE_NAME. column_NAME1, TABLE_NAME. column_NAMEn FROM TABLE_NAME

Прорешаем задания, которые мы уже выполнили, с использованием такого синтаксиса:

SELECT CITY.* FROM CITY

При выполнении этого запроса SELECT получается результат, совершенно аналогичный тому, что и в примерах выше.

Небольшой лайфхак.

Как я составляю запросы? Сначала пишу SELECT *, затем FROM, имя таблицы, выполняю запрос, а уже после перечисляю колонки, которые необходимо вывести на экран, и далее выполняю запрос повторно.

Фильтр строк WHERE в запросе SELECT

Итак, мы научились выводить на экран все данные из заданной таблицы, но как же поступить, если нам необходимо вывести на экран только избранные строки? Допустим, что в заданной таблице миллион строк, а нам необходимо посмотреть из них лишь 10.

К счастью, язык SQL позволяет это сделать. Для этого в языке SQL и в частности в команде SELECT предусмотрен специальный оператор – WHERE.

Рассмотрим синтаксис команды SELECT с оператором WHERE:

SELECT * или перечень колонок FROM TABLE_NAME WHERE условие отбора строк

Примеры:

Выберем названия городов, где население 300 000 человек.

SELECT * FROM CITY WHERE PEOPLES = 300000

Альтернативная форма записи:

SELECT CITY.* FROM CITY WHERE CITY.PEOPLES = 300000

Выражение в WHERE формируется с помощью математических операндов сравнения, рассмотрим этот момент подробнее.

Операнды сравнения

>  больше
<меньше
= строгое равенство
или неравенство! =

Примеры

Выберем все колонки (*) из таблицы городов, где население больше 300 000 человек.

SELECT * FROM CITY WHERE PEOPLES> 300000

Рисунок 9. Запрос таблице CITY с условием

Выберем название города с кодом города, равным 2, из CIty

Альтернативная форма записи:
<< 1 ... 10 11 12 13 14 15 16 17 18 ... 23 >>
На страницу:
14 из 23