- •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 **************
Что делает ansi ?
Как мы уже рассказывали в Введении, стандарт SQL определяется с помощью
кода ANSI (Американский Национальный Институт Стандартов ).
SQL не изобретался ANSI. Это по существу изобретение IBM. Но другие
компании подхватили SQL сразу же, по крайней мере одна компания (Oracle)
отбила у IBM право на рыночную продажу SQL продуктов.
После того как появился ряд конкурирующих программ SQL на рынке,
ANSI определил стандарт к которому они должны быть приведены
(определение таких стандартов и является функцией ANSI ).
Однако после этого, появились некоторые проблемы. Возникли они в результате
стандартизации ANSI ввиде некоторых ограничений. Так как не всегда ANSI
определяет то что является наиболее полезным, то программы пытаются
соответствовать стандарту ANSI не позволяя ему ограничивать их слишком
сильно. Это, в свою очередь, ведет к случайным несогласованностям.
Программы Баз Данных обычно дают ANSI SQL дополнительные особенности
и часто ослабляют многие ограничения из большинства из них.
Следовательно, общие разновидности ANSI будут также рассмотрены.
Хотя мы очевидно не сможем объять каждое исключение или разновидность,
удачные идеи имеют тенденцию к внедрению и использованию в различных
программах даже когда они не определены стандартом ANSI.
ANSI - это вид минимального стандарта и вы можете делать больше чем он
позволяет, хотя и должны выполнять его указания при выполнении задач
которые он определяет.
Интерактивный и вложенный sql
Имеются два SQL: Интерактивный и Вложенный.
Большей частью, обе формы работают одинаково, но используются различно.
Интерактивный SQL используется для функционирования непосредственно
в базе данных чтобы производить вывод для использования его заказчиком.
В этой форме SQL, когда вы введете команду, она сейчас же выполнится
и вы сможете увидеть вывод (если он вообще получится) - немедленно.
14 Понимание sql
______________________________________________________________________
ГЛ. 2
Вложенный SQL состоит из команд SQL помещенных внутри программ,
которые обычно написаны на некотором другом языке (типа КОБОЛА или
Паскаля).
Это делает эти программы более мощными и эффективным. Однако, допуская
эти языки, приходится иметь дело с структурой SQL и стилем управления
данных который требует некоторых расширений к интерактивному SQL.
Передача SQL команд во вложенный SQL является выдаваемой ("passed off")
для переменных или параметров используемых программой в которую они были
вложены.
В этой книге, мы будем представлять SQL в интерактивной форме. Это
даст нам возможность обсуждать команды и их эффекты не заботясь о том как
они связаны с помощью интерфейса с другими языками.
Интерактивный SQL - это форма наиболее полезная непрограммистам.
Все что вы узнаете относительно интерактивного SQL в основном
применимо и к вложенной форме. Изменения необходимые для использования
вложенной формы будут использованы в последней главе этой книги.