
- •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 **************
Что такое - пользователь?
SQL обычно находится в компьютерных системах которые имеют больше
чем одного пользователя, и следовательно должны делать различие между
ними ( ваше семейство PC может иметь любое число пользователей, но оно
обычно не имеет способов чтобы отличвать одного от другого ). Обычно, в
такой системе, каждый пользователь имеет некий вид кода проверки прав
который идентифицирует его или ее (терминология изменяется ). В начале
сеанса с компьютером, пользователь входит в систему (регистрируется),
сообщая компьютеру кто этот пользователь, идентифицированный с помощью
определенного ID(Идентификатора). Любое колличество людей использующих
тот же самый ID доступа, являются отдельными пользователями; и аналогично,
один человек может представлять большое количество пользователей ( в разное
время ), используя различные доступные Идентификаторы
SQL следует этому примеру. Действия в большинстве сред SQL приведены к
специальному доступному Идентификатору который точно соответствует
определенному пользователю. Таблица или другой объект принадлежит
пользователю, который имеет над ним полную власть.
Пользователь может или не может иметь привилегии чтобы выполнять действие
над объектом. Для наших целей, мы договоримся, что любой пользователь имеет
привилегии необходимые чтобы выполнять любое действие, пока мы не возвра-
тимся специально к обсуждению привилегий в Главе 22.
Специальное значение - USER(ПОЛЬЗОВАТЕЛЬ) может использоваться
как аргумент в команде. Оно указывает на доступный Идентификатор
пользователя, выдавшего команду.
18 Понимание sql
______________________________________________________________________
ГЛ. 2
Условия и терминология
Ключевые слова - это слова которые имеют специальное значение в SQL.
Они могут быть командами, но не текстом и не именами объектов.
Мы будем выделять ключевые слова печатая их ЗАГЛАВНЫМИ БУКВАМИ.
Вы должны соблюдать осторожность чтобы не путать ключевые слова
с терминами.
SQL имеет определенные специальные термины которые используются
чтобы описывать его. Среди них - такие слова как запрос, предложение,
и предикат, которые являются важнейшими в описании и понимании языка
но не означают что-нибудь самостоятельное для SQL.
Команды, или предложения, являются инструкциями которыми Вы обращаетесь
к SQL базе данных.
Команды состоят из одной или более отдельных логических частей называемых
предложениями. Предложения начинаются ключевым словом для которого они
являются проименованными, и состоят из ключевых слов и аргументов.
Например предложения с которыми вы можете сталкиваться - это " FROM
Salespeope " и " WHERE city = "London". Аргументы завершают или
изменяют значение предложения. В примерах выше, Salespeople - аргумент,
а FROM - ключевое слово предложения FROM.
Аналогично, " city = "London" " - агрумент предложения WHERE.
Объекты - структуры в базе данных которым даны имена и сохраняются в
памяти. Они включают в себя базовые таблицы, представления ( два типа
таблиц ), и индексы.
Чтобы показать Вам как формируются команды, мы будем делать это на
примерах. Имеется, однако, более формальный метод описания команд
использующих стандартизированные условные обозначения. Мы будем
использовать его в более поздних главах, для удобства чтобы понимать эти
условные обозначения в случае если вы столкнетесь с ним в других SQL
документах.
Квадратные скобки ( [ ] ) будут указывать части которые могут неиспользо-
ваться, а многоточия ( ... ) указывать что все предшествующее им может
повторяться любое число раз.
Слова обозначенные в угловых скобках (<>) - специальные термины
которые объясняют что они собой представляют. Мы упростили
стандартную терминологию SQL значительно, но без ухудшения его
понимания.
SQL: КРАТКИЙ ОБЗОР 19
______________________________________________________________________
============== РЕЗЮМЕ ================
Мы быстро прошли основы в этой главе. Но нашим намерением и было -
просто пролететь над основами SQL, так чтобы вы могли понять идею
относительно всего объема.
Когда мы возвратимся к основе в следующей главе, некоторые вещи станут
более конкретными. Теперь вы знаете кое-что относительно SQL - какова
его структура, как он используется, как он представляет данные, и как
они определяются ( и некоторые несогласованности появляющиеся при этом ),
и некоторые условные обозначения и термины используемые чтобы описывать
их.
Все это - много информации для одной главы; мы не ожидаем что бы вы
запомнили все эти подробности, но вы сможете вернуться позже к ним если
понадобится.
По Главе 3, мы будем идти, показывая конкретно, как формируются команды
и что они делают. Мы представим вам команду SQL используемую чтобы
извлекать информацию из таблиц, и которая является наиболее широко
используемой командой в SQL. К концу этой главы, вы будете способны
извлекать конкретную информацию из вашей базы данных с высокой степенью
точности.
20 ПОНИМАНИЕ SQL
______________________________________________________________________
ГЛ.2