- Любовные романы
- Фантастика и фэнтези
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Понимание SQL - Мартин Грубер


- Жанр: Компьютеры и Интернет / Базы данных
- Название: Понимание SQL
- Автор: Мартин Грубер
- Возрастные ограничения: (18+) Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних просмотр данного контента СТРОГО ЗАПРЕЩЕН! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту для удаления материала.
Шрифт:
Интервал:
Закладка:
МАРТИН ГРУБЕР
Понимание SQL
Перевод Лебедева В.Н.
Под редакцией Булычева В.Н.
МОСКВА, 1993
MARTIN GRUBER
Understanding SQL
Команда SELECT
SELECT * | { [ DISTINCT | ALL] <value expression>.,..}
FROM { <table name> [ <alias> ] }.,..
[ WHERE <predicate>]
[ GROUP BY { <column name> | <integer> }.,..]
[ HAVING <predicate>]
[ ORDERBY { <column name> | <integer> }.,..]
[ { UNION [ALL]
SELECT * | { [DISTINCT | ALL] < value expression >.,..}
FROM { <table name> [<alias>]} .,..
[ WHERE <predicate>
[ GROUP BY { <columnname> | <integer> }.,..]
[ HAVING <predicate>]
[ ORDER BY { <columnname> | <integer> }.,..] } ] ...;
Элементы, используемые в команде SELECT
ЭЛЕМЕНТ
ОПРЕДЕЛЕНИЕ
<value expression>
Выражение, которое производит значение. Оно может включать в себя или содержать <column name>.
<table name>
Имя или синоним таблицы или представления
<alias>
Временный синоним для <table name>, определеный в этой таблице и используемый только в этой команде
<predicate>
Условие , которое может быть верным или неверным для каждой строки или комбинации строк таблицы в предложении FROM.
<column name>
Имя столбца в таблице.
<integer>
Число с десятичной точкой. В этом случае, оно показывает <value expression> в предложении SELECT с помощью идентификации его местоположения в этом предложении.
Команды UPDATE, INSERT, DELETE
UPDATE
UPDATE <tablename>
SET { | }.,. .< column name> = <value expresslon> [ WHERE <predlcate>
| WHERE CURRENT OF <cursor name> (*только для вложения*) ];
INSERT
INSERT INTO < table name> [(<column name> .,. ]
{ VALUES ( <value expression> .,.. ) } | <query>;
DELETE
DELETE FROM <table name>
[ WHERE <predicate>
| WHERE CURRENT OF <cursor name> (*только для вложения*) ];
Элементы, используемые в командах МОДИФИКАЦИИЭЛЕМЕНТ
ОПРЕДЕЛЕНИЕ
<cursor name>
Имя курсора используемого в этой программе.
<query>
Допустимая команда SELECT.
Для других элементов смотри команду SELECT.
Символы Используемые в Синтаксисе Предлжения
СИМВОЛ
ОБЪЯСНЕНИЕ
|
Любой предшествующий знаку (|) символ может быть произвольно
заменен на любой следующий за (|). Это — символический способ высказывания "или" ("or").
{ }
Все, что включено в фигурные скобки обрабатывается как модуль с целью оценки |, .,.. или других символов.
[ ]
Все,включенное в квадратные скобки является необязательным
...
Любое, предшествующее этому, может повторяться любое число раз.
.,..
Любое, предшествующее этому, и в каждом случае отделенное
запятыми, может повторяться любое число раз.
Команда CREATE TABLE
CREATE TABLE <table name>
( { <column name> <data type> | <size>]
[<colcnstrnt> ...]} .,.. );
[<tabconstrnt>] .,.. );
Элементы, используемые в команде CREATE TABLE
ЭЛЕМЕНТ
ОПРЕДЕЛЕНИЕ
<table name>
Имя таблицы создаваемой этой командой.
<column name>
Имя столбца таблицы.
<data type>
Тип данных
Тип данных, который может содержаться в столбце.
Может быть любым из следующих:INTEGER (ЦЕЛОЕ ЧИСЛО),
CHARACTER (СИМВОЛЬНОЕ),
DECIMAL (ДЕСЯТИЧНОЕ),
NUMERIC (ЧИСЛОВОЕ),
SMALLINT (НАИМЕНЬШЕЕ)
FLOAT (С ПЛАВАЮЩЕЙ ТОЧКОЙ)
REAL (РЕАЛЬНОЕ),
DOUBLE PRECISION (УДВОЕННАЯ ТОЧНОСТЬ С ПЛАВАЮЩЕЙ ТОЧКОЙ),
LONG * (ДЛИННОЕ *),
VARCHAR * (ПЕРЕМЕННОЕ СИМВОЛЬНОЕ *),
DATE * (ДАТА *),
TIME * (ВРЕМЯ *)
(* — указывает на нестандартный для SQL тип данных)
<size> Размер. Его значение зависит от <data type>.
<colconstrnt> Может быть любым из следующих:
NOT NULL (НЕ НУЛЕВОЙ),
UNIQUE (УНИКАЛЬНЫЙ),
PRIMARY KEY (ПЕРВИЧНЫЙ КЛЮЧ),
CHECK(<predicate>) (ПРОВЕРКА предиката),
DEFAULT = <value expression> (ПО УМОЛЧАНИЮ = значимому выражению)
REFERENCES <table name> [(<column name> .,.. )] (ССЫЛКА НА имя таблицы [(имя столбца) ] )
<tabconstrnt> Может быть любым из следующих:
UNIQUE (УНИКАЛЬНЫЙ),
PRIMARY KEY (ПЕРВИЧНЫЙ КЛЮЧ),
CHECK (ПРОВЕРКА предиката )
FOREIGN KEY(<column name>) (ВНЕШНИЙ КЛЮЧ)
REFERENCES <table name> [(<column name> .,.. )] (ССЫЛКА НА имя таблицы [( имя столбца) ].
ПРЕДИСЛОВИЕ
"ПОНИМАНИЕ SQL" - это полный учебник по программированию на Структурированном Языке Запросов, написанный специально для тех, кто будет использовать SQL в процессе работы. Даже если это ваш первый опыт с компьютерами или управлением базами данных, книга "ПОНИМАНИЕ SQL" очень быстро научит вас свободно работать с реальной SQL, использованию простых запросов, а также снабдит вас ясными понятиями об автоматизированном управлении базой данных. Книга даст вам краткое, удобное в чтении введение в реляционные базы данных. Предоставит вам обучающие программы, чтобы, овладевая командами SQL шаг за шагом, помочь вам узнать, как извлекать и обрабатывать информацию, содержащуюся в таблицах данных, т.е.:
* выбирать информацию, с которой вы хотите работать
* добавлять, удалять, и модифицировать информацию в таблице данных
* использовать и-или, верно/неверно и другие условия для обнуления определенной информации
* использовать специальные функции SQL для суммирования ваших данных.
Книга покажет Вам, как эффективно работать с многочислеными таблицами данных, используя улучшеную технику для запроса более чем одной таблицы одновременно, строить комплекс запросов и подзапросов, и использовать представления, чтобы создавать базы данных и работать с базами данных раздельно с многими таблицами.
Научит создавать новые таблицы данных для пользовательских деловых прикладных программ. Вы исследуете принципы эффективного проектирования базы данных, а также техники для обеспечения целостности данных и их защиты.
Вы узнаете, как использовать SQL с другими языками в специальной главе SQL для программистов.
"ПОНИМАНИЕ SQL" - необходима и пригодна для любой реализации Структурированного Языка Запроса. Книга включает и краткий справочный стандарт SQL и руководство к общим нестандартным особенностям SQL.
Об АвтореМартин Грубер - свободный писатель, учитель и консультант из Сан-Франциско.
В дополнении к написанию и редактированию книг, руководств пользователей и документации, он работает в широком спектре интересов, связанных с компьютерами и компьютерными базами данных.
Глава 1. ВВЕДЕНИЕ В РЕЛЯЦИОННУЮ БАЗУ ДАННЫХ
SQL (ОБЫЧНО ПРОИЗНОСИМАЯ КАК "SEEQUEL" ["СЭКВЭЛ"]) символизирует собой Структурированный Язык Запросов. Это - язык который дает вам возможностьсоздавать и работать в реляционных базах данных, которые являются наборами связанной информации сохраняемой в таблицах.
Мир баз данных становится все более и более единым, что привело к необходимости создания стандартного языка который мог бы использоваться чтобы функционировать в большом количестве различных видов компьютерных сред. Стандартный язык позволит пользователям знающим один набор команд, использовать их чтобы создавать, отыскивать, изменять, и передавать информацию независимо от того работают ли они на персональном компьютере, сетевой рабочей станции, или на универсальной ЭВМ.
В нашем все более и более взаимосвязанном компьютерном мире, пользователь снабженый таким языком, имеет огромное преимущество в использовании и обобщении информации из ряда источников с помощью большого колличества способов.
Элегантность и независимость от специфики компьютерных технологий, а также его поддержка лидерами промышленности в области технологии реляционных баз данных, сделало SQL, и вероятно в течение обозримого будущего оставит его, основным стандартным языком. По этой причине, любой кто хочет работать с базами данных 90-х годов должен знать SQL.
Стандарт SQL определяется ANSI (Американским Национальным Институтом Стандартов) и в данное время также принимается ISO (МЕЖДУНАРОДНОЙ ОРГАНИЗАЦИЕЙ ПО СТАНДАРТИЗАЦИИ). Однако, большинство коммерческих программ баз данных расширяют SQL без уведомления ANSI, добавляя разные другие особенности в этот язык, которые, как они считают, будут весьма полезны. Иногда они несколько нарушают стандарт языка, хотя хорошие идеи имеют тенденцию развиваться и вскоре становиться стандартами "рынка" сами по себе в силу полезности своих качеств. В этой книге, мы будем, в основном, следовать стандарту ANSI, но одновременно иногда будет показывать и некоторые наиболее общие отклонения от его стандарта.