ВУЗ:
Составители:
Рубрика:
23
[..., <table_name16 | view_name16>[(optimizer_hints)]]]
[WHERE clause]
[GROUP BY clause]
[HAVING clause]
[ORDER BY clause]
[COMPUTE clause]
Простой запрос SQL основан на трех ключевых словах оператора
SELECT: SELECT (определяет список полей DYNASET’а), FROM (указывает
таблицы-источники), WHERE (определяет условия отбора).
SELECT *
В своей простейшей форме SELECT предоставляет все данные из таб-
лицы:
SELECT * FROM <ТАБЛИЦА>
Проекция
Выбор нескольких полей из таблицы осуществляется простым пере-
числением. Кроме того, DYNASET содержит поля в том порядке, в котором
они указаны в списке, так что для перестановки полей таблицы местами (сор-
тировка полей) достаточно указать в SELECT необходимый порядок следо-
вания.
SELECT <имя поля1>, <имя поля2>, ... FROM <ТАБЛИЦА>
Иногда между столбцами необходима вставка некоторой строки с фик-
сированным значением.
Запрос: Вывести фамилии студентов и их адреса, разделенные фразой
“проживает по адресу”.
Решение:
SELECT СФам, ‘проживает по адресу’, САдрес FROM СТУДЕНТ.
Результат:
СФам САдрес
Иванов И.И. проживает по адресу А1
Иванов И.И. проживает по адресу А2
Петрова П.П. проживает по адресу А3
Андреева А.А. проживает по адресу А4
Синтаксис:
SELECT column_name | 'string literal' [,column_name | 'string_literal'...]
FROM table_name
Имя любого столбца в DYNASET может не совпадать с именем соот-
ветствующего поля исходной таблицы.
Решение (2):
SELECT ФИО = СФам, ‘проживает по адресу’, Адрес = САдрес
FROM СТУДЕНТ.
24
Результат:
ФИО Адрес
Иванов И.И. проживает по адресу А1
Иванов И.И. проживает по адресу А2
Петрова П.П. проживает по адресу А3
Андреева А.А. проживает по адресу А4
Синтаксис:
SELECT column_heading = column_name [,column_name...]FROM table_name
SELECT column_name column_heading [,column_name...]FROM table_name
Поскольку в результате операции вертикальной проекции может поя-
виться набор записей, не являющийся отношением (содержащий одинаковые
строки), то в SQL для устранения из результирующего набора повторяющих-
ся строк используется ключевое слово DISTINCT:
Синтаксис:
SELECT {DISTINCT | ALL} < целевой список > FROM <ТАБЛИЦА>.
По умолчанию используется ключевое слово ALL.
Вычисляемые поля и вычисления
Оператор SELECT допускает использование в целевом списке вычис-
ляемых полей.
Запрос: Предположим, что оценка, полученная студентом, должна
быть переведена в баллы некоторого рейтинга – оценка*100. Вычислить
балл, полученный студентом за каждый экзамен.
Решение:
SELECT ID_Stud, Оценка*100 FROM УСПЕВАЕМОСТЬ
Более того, если требуется вычислить значение какого-либо выраже-
ния, даже не связанного с БД, используется оператор SELECT:
Пример: SELECT exp(0)
возвращает значение 1.
Синтаксис любого арифметического оператора вполне традиционен,
разница лишь в том, что в качестве операндов или параметров функций мо-
гут выступать имена столбцов. Различные реализации SQL снабжены боль-
шим количеством встроенных функций для работы с базовыми типами дан-
ных. Кратко упомянем часто встречающиеся возможности без конкретизации
синтаксиса.
⇒ Работа с числовыми данными: взятие модуля, элементарные ма-
тематические, тригонометрические функции, преобразование градусов в ра-
дианы и обратно, функции округления, взятия целой части и некоторые дру-
гие.
⇒ Работа с символьными данными: слияние строк, получение кода
ASCII, возвращение позиции первого включения подстроки и некоторые дру-
гие функции, связанные с позиционированием символов в строке, перевод из
нижнего регистра в верхний и наоборот и т.д.
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »