- •Iso (международной организацией по
- •2 Понимание sql
- •Что такое - реляционная база данных?
- •Порядок строк произволен
- •4 Понимание sql ___________________________________________________________________
- •Идентификация строк ( первичные ключи )
- •Столбцы именуются и нумеруются
- •8 Понимание sql
- •************** Работа с sql **************
- •Sql : обзор
- •Что делает ansi ?
- •Интерактивный и вложенный sql
- •14 Понимание sql
- •Субподразделения sql
- •16 Понимание sql
- •Sql несогласованности
- •Что такое - пользователь?
- •18 Понимание sql
- •Условия и терминология
- •************** Работа с sql **************
- •24 Понимание sql
- •26 Понимание sql
- •Переупорядочение столбца
- •28 Понимание sql
- •Параметры distinct
- •30 Понимание sql
- •32 Понимание sql
- •************* Работа с sql ***************
- •38 Понимание sql
- •40 Понимание sql
- •42 Понимание sql
- •44 Понимание sql
- •Использование специальных операторов в условиях
- •50 Понимание sql
- •52 Понимание sql
- •54 Понимание sql
- •56 Понимание sql
- •************** Работа с sql **************
- •Обобщение данных с помощью агрегатных функций
- •64 Понимание sql
- •66 Понимание sql
- •Включение дубликатов в агрегатные функции
- •Предложение group by
- •68 Понимание sql
- •Предложение having
- •70 Понимание sql
- •72 Понимание sql
- •************** Работа с sql **************
- •Формирование выводов запросов
- •Помещение текста в вашем выводе запроса
- •78 Понимание sql
- •80 Понимание sql
- •82 Понимание sql
- •Упорядочение вывода по номеру столбца
- •84 Понимание sql
- •************** Работа с sql **************
- •Запрашивание многочисленых таблиц также как одной
- •90 Понимание sql
- •92 Понимание sql
- •94 Понимание sql
- •************** Работа с sql **************
- •Объединение таблицы с собой
- •Псевдонимы
- •100 Понимание sql
- •Устранение избыточности
- •102 Понимание sql
- •Больше псевдонимов
- •104 Понимание sql
- •106 Понимание sql
- •************** Работа с sql **************
- •Вставка одного запроса внутрь другого
- •112 Понимание sql
- •114 Понимание sql
- •116 Понимание sql
- •In определяет набор значений, одно из которых должно совпадать с другим
- •118 Понимание sql
- •In является подходящим, если запрос может ограниченно производить одно
- •120 Понимание sql
- •122 Понимание sql
- •*************** Работа с sql *************
- •Соотнесенные подзапросы
- •130 Понимание sql
- •132 Понимание sql
- •Соотнесенные подзапросы в предложении having
- •134 Понимание sql
- •*************** Работа с sql *************
- •Использование оператора exists
- •140 Понимание sql
- •142 Понимание sql
- •144 Понимание sql
- •146 Понимание sql
- •************** Работа с sql **************
- •Использование оператора exists
- •152 Понимание sql
- •154 Понимание sql _____________________________________________________________________
- •156 Понимание sql
- •158 Понимание sql
- •160 Понимание sql
- •162 Понимание sql
- •Использование count вместо exists
- •166 Понимание sql
- •************** Работа с sql **************
26 Понимание sql
_____________________________________________________________________
ГЛ. 3
определенные столбцы таблицы.
Это выполняется легко, простым исключением столбцов которые вы не хотите
видеть, из части команды SELECT. Например, запрос
SELECT sname, comm
FROM Salespeople;
будет производить вывод показанный на Рисунке 3.2.
=============== SQL Execution Log ============
| |
| SELECT snum, comm |
| FROM Salespeople; |
| |
| ==============================================|
| sname comm |
| ------------- --------- |
| Peel 0.12 |
| Serres 0.13 |
| Motika 0.11 |
| Rifkin 0.15 |
| Axelrod 0.10 |
===============================================
Рисунок 3.2: Выбор определенных столбцов
Могут иметься таблицы которые имеют большое количество столбцов
содержащих данные, не все из которых являются относящимися к
поставленой задаче. Следовательно, вы можете найти способ подбора и
выбора только полезных для Вас столбцов.
Переупорядочение столбца
Даже если столбцы таблицы, по определению, упорядоченны, это не
означает что вы будете восстанавливать их в том же порядке.
Конечно, звездочка (*) покажет все столбцы в их естественном порядке,
но если вы укажете столбцы отдельно, вы можете получить их в том
порядке котором хотите. Давайте рассмотрим таблицу Порядков,
содержащую дату приобретения(odate), номер продавца(snum), номер
порядка(onum), и суммы приобретения(amt):
ИСПОЛЬЗОВАНИЕ SQL ДЛЯ ИЗВЛЕЧЕНИЯ
ИНФОРМАЦИИ ИЗ ТАБЛИЦ 27
______________________________________________________________________
SELECT odate, snum, onum, amt
FROM Orders;
Вывод этого запроса показан на Рисунке 3.3.
============= SQL Execution Log =============
| |
| SELECT odate, snum, onum, amt |
| FROM Orders; |
| |
| ------------------------------------------------|
| odate snum onum amt |
| ----------- ------- ------ --------- |
| 10/03/1990 1007 3001 18.69 |
| 10/03/1990 1001 3003 767.19 |
| 10/03/1990 1004 3002 1900.10 |
| 10/03/1990 1002 3005 5160.45 |
| 10/03/1990 1007 3006 1098.16 |
| 10/04/1990 1003 3009 1713.23 |
| 10/04/1990 1002 3007 75.75 |
| 10/05/1990 1001 3008 4723.00 |
| 10/06/1990 1002 3010 1309.95 |
| 10/06/1990 1001 3011 9891.88 |
| |
===============================================
Рисунок 3.3: Реконструкция столбцов
Как вы можете видеть, структура информации в таблицах - это просто
основа для активной перестройки структуры в SQL.
УДАЛЕНИЕ ИЗБЫТОЧНЫХ ДАННЫХ
DISTINCT (ОТЛИЧИЕ) - аргумент который обеспечивает Вас
способом устранять двойные значения из вашего предложения SELECT.
Предположим что вы хотите знать какие продавцы в настоящее время
имеют свои порядки в таблице Порядков. Под порядком (здесь и далее)
будет пониматься запись в таблицу Порядков, регистрирующую приобре-
тения сделанные в определенный день определенным заказчиком у опре-
деленного продавца на определенную сумму).
Вам не нужно знать, сколько порядков имеет каждый; вам нужен только
список номеров продавцов (snum). Поэтому Вы можете ввести:
SELECT snum
FROM Orders;
для получения вывода показанного в Рисунке 3.4