OpenU.Ru
Все запросы выборки в языке SQL состоят из одиночной команды SELECT с достаточно простой структурой, однако путем ее умелого использования можно выполнить сложную обработку данных. В самой простой форме команда просто обращается к базе данных, чтобы извлечь информацию из таблицы.
Например, выведем информацию обо всех покупателях. Для этого достаточно написать следующий запрос:
SELECT BNum, BName, BTown FROM Buyers
Теперь поясним эту команду:
SELECT – ключевое слово, которое сообщает БД, что эта команда является запросом выборки. Этой командой начинаются все запросы такого типа.
BNum, BName, BTown – список полей из таблицы, которые необходимо выбрать. Поля, не перечисленные здесь, не будут включены в результат запроса.
FROM – ключевое слово, которое как и SELECT должно быть представлено в любом запросе такого типа. Оно указывает на источник информации (таблицу). В данном примере указана таблица Buyers.
Не редко, когда из таблицы нужно выбрать все поля, то после ключевого слова SELECT вместо перечисления полей используют символ *. Соответственно тот же запрос можно переписать в следующем виде:
SELECT * FROM Buyers
Опишем правила написания таких запросов в общем случае:
Эта команда способна извлечь и строго определенную информацию, такую как вывод только определенных полей таблицы.
Например, выведем номера категорий товара из списка товаров. Запрос будет выглядеть следующим образом:
SELECT GTypeNum FROM Goods
В результате получим:
GTypeNum |
1 |
1 |
3 |
2 |
4 |
1 |
1 |
2 |
При работе с данными часто возникает потребность в удалении избыточных данных. Такая необходимость возникла в предыдущем примере. Категория с номером 1 встречается дважды в результате запроса. Удаление избыточных данных осуществляется при помощи инструкции DISTINCT. DISTINCT – это аргумент, который обеспечивает устранение повторяющихся значений из предложения SELECT. DISTINCT просматривает значения, которые были выведены ранее, и не дает им дублироваться в списке. Таким образом, чтобы избавиться от избыточности, нам необходимо переписать запрос следующим образом:
SELECT DISTINCT GTypeNum FROM GOODS
В результате получим:
GTypeNum |
1 |
3 |
2 |
4 |
Пользоваться этим аргументом следует очень внимательно, и следить за его применением. Следует знать, что DISTINCT может указываться только один раз в данном предложении SELECT. В запросах на выборку данных также допустимы условия, группировки, сортировки данных и другие предикаты и операторы языка SQL.
Содержание