ВУЗ:
Составители:
Рубрика:
WITH TIES – разрешает вывод дублирующих строк для последних двух вариантов.
Список выбора содержит имена столбцов различных таблиц для формирования
результата. Столбцы могут переименовываться с помощью конструкции AS.
Если в качестве списка выбора задана звездочка (*), то в запрос будут включены все
столбцы всех таблиц и представлений, заданных в качестве источников данных. Если в списке
задана конструкция имя. *, то это означает, в список выбора надо включить все колонки объекта с
данным именем. В список выбора можно включить и выражения, тогда их значения будут
вычисляться при формировании каждой строки. Эта колонка будет либо безымянной, либо будет
иметь имя, заданной конструкцией AS, следующей после выражения. Элемент списка в виде имя.
IDENTICOL [AS имя счетчика] позволяет включить в результат колонку – счетчик объекта с
данным именем. С помощью ключевого слова POWGVIDCOL аналогичным образом можно
включить глобально уникальный идентификатор строк того или иного объекта.
Раздел INTO позволяет создать новую таблицу для хранения результатов запроса,
структура которой будет определяться списком выбора, т.е. динамически при выполнении
запроса.
Раздел FROM является обязательным в команде SELECT и определяет таблицы
и
представления для выборки данных. Если таблица одновременно является и источником данных, и
получателем результатов, то ей необходимо задать псевдоним с помощью конструкции AS, что
обеспечит правильную работу сервера. Для таблиц можно указывать уровни блокировок:
HOLDLOCK, NOLOCK и т.д.
В разделе FROM можно задавать связанные таблицы для формирования сложных
запросов:
исходная таблица, тип
связи, исходная таблица
ON условие поиска
или
исходная таблица CROSS JOIN исходная таблица.
При использовании ключевых слов CROSS JOIN или запятой происходит связывание
каждой строки левой таблицы с каждой строкой правой таблицы, так что количество строк при
выполнении запроса определяется как произведение количества строк первой таблицы на
количество строк второй таблицы.
При использовании ключевых слов INNER JOIN или пробела выбираются пары строк из
связанных таблиц, для которых имеются строки, удовлетворяющие критерию связывания в обеих
таблицах. Строки из левой таблицы, для которых не имеется пары в связанной таблице, в
результат не включаются. Также не включаются строки правой таблицы, для которых нет
соответствующей строки в левой таблице.
При использовании
ключевых слов LEFT [OUTER] JOIN в результат будут включены
все строки левой таблицы, независимо от того, есть для них соответствующая строка в правой
таблице или нет, при этом для соответствующих столбцов правой таблицы, включенных в запрос,
при отсутствии соответствия будут заноситься значения NULL.
При использовании ключевых слов RIGHT [OUTER] JOIN в результат будут включены
все строки правой
таблицы, независимо от того, есть для них соответствующие строки в левой
таблице. В столбцах левой таблицы, для тех строк, для которых нет соответствия, запишутся
значения NULL.
При использовании ключевых слов FULL [OUTER] JOIN в результат будут включены
все строки как правой, так и левой таблицы.
Логическое условие связывания двух таблиц, которое записывается после ключевого
слово ON, должно быть логическим выражением, включающим любые операторы сравнения: =, <,
>, <=, >=,! =, <>. В ряде случаев в запросах используются опции оптимизации: LOOP, HASH,
MERGE, REMOTE. Если эти опции не заданы, то оптимизацию запросов осуществляет сервер.
С помощью раздела WHERE можно сузить количество обрабатываемых строк данных,
написав одно или несколько логических условий:
WHERE условие поиска
или имя колонки * = имя колонки -- LEFT OUTER JOIN
или имя колонки * = имя колонки -- RIGHT OUTER JOIN
WITH TIES – разрешает вывод дублирующих строк для последних двух вариантов.
Список выбора содержит имена столбцов различных таблиц для формирования
результата. Столбцы могут переименовываться с помощью конструкции AS.
Если в качестве списка выбора задана звездочка (*), то в запрос будут включены все
столбцы всех таблиц и представлений, заданных в качестве источников данных. Если в списке
задана конструкция имя. *, то это означает, в список выбора надо включить все колонки объекта с
данным именем. В список выбора можно включить и выражения, тогда их значения будут
вычисляться при формировании каждой строки. Эта колонка будет либо безымянной, либо будет
иметь имя, заданной конструкцией AS, следующей после выражения. Элемент списка в виде имя.
IDENTICOL [AS имя счетчика] позволяет включить в результат колонку – счетчик объекта с
данным именем. С помощью ключевого слова POWGVIDCOL аналогичным образом можно
включить глобально уникальный идентификатор строк того или иного объекта.
Раздел INTO позволяет создать новую таблицу для хранения результатов запроса,
структура которой будет определяться списком выбора, т.е. динамически при выполнении
запроса.
Раздел FROM является обязательным в команде SELECT и определяет таблицы и
представления для выборки данных. Если таблица одновременно является и источником данных, и
получателем результатов, то ей необходимо задать псевдоним с помощью конструкции AS, что
обеспечит правильную работу сервера. Для таблиц можно указывать уровни блокировок:
HOLDLOCK, NOLOCK и т.д.
В разделе FROM можно задавать связанные таблицы для формирования сложных
запросов:
исходная таблица, тип связи, исходная таблица
ON условие поиска
или
исходная таблица CROSS JOIN исходная таблица.
При использовании ключевых слов CROSS JOIN или запятой происходит связывание
каждой строки левой таблицы с каждой строкой правой таблицы, так что количество строк при
выполнении запроса определяется как произведение количества строк первой таблицы на
количество строк второй таблицы.
При использовании ключевых слов INNER JOIN или пробела выбираются пары строк из
связанных таблиц, для которых имеются строки, удовлетворяющие критерию связывания в обеих
таблицах. Строки из левой таблицы, для которых не имеется пары в связанной таблице, в
результат не включаются. Также не включаются строки правой таблицы, для которых нет
соответствующей строки в левой таблице.
При использовании ключевых слов LEFT [OUTER] JOIN в результат будут включены
все строки левой таблицы, независимо от того, есть для них соответствующая строка в правой
таблице или нет, при этом для соответствующих столбцов правой таблицы, включенных в запрос,
при отсутствии соответствия будут заноситься значения NULL.
При использовании ключевых слов RIGHT [OUTER] JOIN в результат будут включены
все строки правой таблицы, независимо от того, есть для них соответствующие строки в левой
таблице. В столбцах левой таблицы, для тех строк, для которых нет соответствия, запишутся
значения NULL.
При использовании ключевых слов FULL [OUTER] JOIN в результат будут включены
все строки как правой, так и левой таблицы.
Логическое условие связывания двух таблиц, которое записывается после ключевого
слово ON, должно быть логическим выражением, включающим любые операторы сравнения: =, <,
>, <=, >=,! =, <>. В ряде случаев в запросах используются опции оптимизации: LOOP, HASH,
MERGE, REMOTE. Если эти опции не заданы, то оптимизацию запросов осуществляет сервер.
С помощью раздела WHERE можно сузить количество обрабатываемых строк данных,
написав одно или несколько логических условий:
WHERE условие поиска
или имя колонки * = имя колонки -- LEFT OUTER JOIN
или имя колонки * = имя колонки -- RIGHT OUTER JOIN
Страницы
- « первая
- ‹ предыдущая
- …
- 36
- 37
- 38
- 39
- 40
- …
- следующая ›
- последняя »
