
- •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 **************
16 Понимание sql
______________________________________________________________________
ГЛ. 2
Два типа чисел ANSI , INTEGER(ЦЕЛОЕ ЧИСЛО) и DECIMAL
(ДЕСЯТИЧНОЕ ЧИСЛО) ( которые можно сокращать как INT и DEC,
соответственно ), будут адекватны для наших целей, также как и для целей
большинства практических деловых прикладных программ.
Естественно, что тип ЦЕЛОЕ можно представить как ДЕСЯТИЧНОЕ ЧИСЛО
которое не содержит никаких цифр справа от десятичной точки.
Тип для текста - CHAR ( или СИМВОЛ ), который относится к строке текста.
Поле типа CHAR имеет определенную длину, которая определяется максималь-
ным числом символов которые могут быть введены в это поле. Больше всего
реализаций также имеют нестандартный тип называемый VARCHAR(ПЕРЕ-
МЕННОЕ ЧИСЛО СИМВОЛОВ), который является текстовой строкой которая
может иметь любую длину до определенного реализацией максимума (обычно 254
символа ). CHARACTER и VARCHAR значения включаются в одиночные ка-
вычки как "текст".
Различие между CHAR и VARCHAR в том, что CHAR должен резервировать
достаточное количество памяти для максимальной длины строки, а VARCHAR
распределяет память так как это необходимо.
Символьные типы состоят из всех печатных символов, включая числа.
Однако, номер 1 не то же что символ "1". Символ "1" - только другой печат-
ный фрагмент текста, не определяемый системой как наличие числового значе-
ния 1. Например 1 + 1 = 2, но "1" + "1" не равняется "2".
Символьные значения сохраняются в компьютере как двоичные значения,
но показываются пользователю как печатный текст. Преобразование
следует за форматом определяемым системой которую вы используете.
Этот формат преобразования будет одним из двух стандартных типов
(возможно с расширениями) используемых в компьютерных системах:
в ASCII коде ( используемом во всех персональных и малых компьютерах )
и EBCDIC коде (Расширенном Двоично-Десятичном Коде Объмена Ин-
формации) (используемом в больших компьютерах).
Определенные операции, такие как упорядочивание в алфавитном порядке
значений поля, будет изменяться вместе с форматом. Применение этих
двух форматов будет обсуждаться в Главе 4.
Мы должны следить за рынком, а не ANSI, в использовании типа называемого
DATE(ДАТОЙ). ( В системе, которая не распознает тип ДАТА, вы конечно
можете обьявить дату как символьное или числовое поле, но это сделает
большинство операций более трудоемкими. ) Вы должны смотреть свою
документацию по пакету программ которые вы будете использовать, чтобы выяс-
нить точно, какие типы данных она поддерживает.
SQL: КРАТКИЙ ОБЗОР 17
______________________________________________________________________
Sql несогласованности
Вы можете понять из предшествующего обсуждения, что имеются
самостоятельные несогласованности внутри продуктов мира SQL.
SQL появился из коммерческого мира баз данных как инструмент, и
был позже превращен в стандарт ANSI. К сожалению, ANSI не всегда
определяет наибольшую пользу, поэтому программы пытаются соответствовать
стандарту ANSI не позволяя ему ограничивать их слишком сильно.
ANSI - вид минимального стандарта - вы можете делать больше чем он это
позволяет, но вы должны быть способны получить те же самые результаты
что и при выполнении той же самой задачи.