Самоучитель. Курс SQL. Базы данных. ORACLE
Шрифт:
Ответ: команды DML: SELECT, INSERT, UPDATE, DELETE и MERGE.
2. Нам необходимо добавить новое лекарство в нашу базу данных в таблицу–справочник лекарственных средств. Какую команду SQL мы должны использовать? (Ответ должен быть, например, команда UPDATE или DELETE, или другая).
Ответ: команда INSERT.
3. В таблице заказов необходимо отредактировать количество проданного товара для одной из покупок, сделанных минуту назад. Клиент решил купить больше товара! Необходимо изменить значение в некоторой строке. Какая команда SQL будет выполнена?
Ответ: команда UPDATE.
4.
Ответ: команда ALTER.
5. Необходимо удалить ошибочно заведенного клиента, то есть необходимо будет удалить строку из таблицы клиентов. Какая это команда SQL?
Ответ: команда DELETE.
6. Необходимо для одного из клиентов в столбце «Дата закрытия» удалить дату, так как руководство приняло решение возобновить работу с клиентом. Какая команда SQL?
Ответ: UPDATE, так как это не команда удаления строки целиком, а команда изменения ее значения в определенном столбце с даты, на пустое значение.
7. Для расширения бизнеса потребуется одна новая таблица для хранения операций по скидочным картам. Какая команда SQL должна быть выполнена чтобы создать новую таблицу в базе данных?
Ответ: команда CREATE.
8. Нужно получить остаток по счету некоторого клиента. Какая команда SQL будет выполнена?
Ответ: команда SELECT.
9. Необходимо вывести список последних десяти операций по счету клиента. Какая команда SQL?
Ответ: команда SELECT.
10. В базе данных создали новую таблицу. Необходимо предоставить возможность выбирать данные из этой таблицы всем пользователям базы данных. Какую команду SQL необходимо выполнить, чтобы предоставить права на возможность выполнения команды SELECT из этой новой таблицы?
Ответ: команда GRANT.
3. Структура команды SELECT
SELECT (с англ. «выбрать») – это команда получения информации из базы данных и преобразование ее к любому удобному виду. С помощью этой команды можно выбирать данные из одной таблицы или сразу из нескольких (позже мы узнаем, что получать данные можно не только из таблиц). Получаемый результат можно сортировать, группировать, анализировать.
SELECT – это самая часто используемая команда языка SQL. С помощью нее можно получать как табличные данные (например, список клиентов с подробными сведениями о них, топ самых продаваемых товаров за прошлый год, или список доступных банковских продуктов для клиента), так и какую–либо обобщающую информацию – одним значением (например, доступный баланс на банковской карте или количество друзей друга/подруги в социальной сети, или даже оставшееся количество мест в любимом отеле на интересующую дату). Любые данные в любом виде из базы данных получает команда SELECT.
Синтаксис команды SELECT максимально прост. Чтобы выбрать какую–либо информацию из таблицы нужно написать:
Итак, чтобы выбрать информацию из некоторой таблицы, нужно
Любой запрос можно писать хоть весь в одну строку, хоть разбивать его на несколько строк. Если запрос получается большой и сложный, то, чтобы он был более легко читаем, его принято разбивать на несколько строк. Постепенно мы будем привыкать к хорошему стилю написания SQL–кода.
Теперь попробуем написать первую команду выборки данных:
Давай выведем еще и даты рождения сотрудников:
Выборка информации из таблицы без условий, то есть всех строк данных (!) не часто бывает нужна и поэтому, почти всегда, на выбираемые строки из таблицы накладывают условие или условия, чтобы отбирать только подходящие условиям данные. Это делается с помощью блока WHERE. Именно в блоке WHERE пишутся одно или несколько (комбинация) условий, для определения отбираемых данных. Его место в запросе SELECT:
Блок ORDER BY всегда пишется в самом конце SQL–запроса!
Если к выводимым данным необходимо добавить данные еще из другой одной или нескольких таблиц (присоединить к выводящимся данным данные из других таблиц), то после того, как мы написали слово FROM и имя основной таблицы, мы можем присоединять дополнительные таблицы с помощью слова JOIN:
Ничего себе, сколько всего, скажешь ты, как это можно все запомнить и понять?! Каждый блок мы разберем по–отдельности и каждому уделим достаточно внимания!
Но и это еще не все. Есть еще одна возможность команды SELECT – это группировка.
Получаемые данные можно группировать по одному или нескольким признакам одновременно.
Для того чтобы указать по одинаковым значениям в каком столбце необходимо данные группировать, нужно команду SELECT дополнить блоком GROUP BY (с англ. «группировать по») и затем написать имя столбца, по которому необходима группировка. И теперь все строки получаемого набора данных будут группироваться по одинаковому значению в этом столбце.