Разница между оператором и запросом в SQL
Я все еще живу в этой двусмысленности: концептуально, какая разница между оператором и запросом в SQL? Может ли кто-нибудь дать определение для каждого из них? Это было бы полезно, например, при выборе переменных имен внутри программ таким образом, чтобы это было ясно для всех.
Спасибо!
ДОПОЛНИТЕЛЬНО:. Как я могу вызвать фрагмент кода SQL, сделанный более чем одним оператором, где операторы разделяются точкой с запятой (;
)? Кто уже ответил, может отредактировать его ответ. Большое спасибо!
Ответы
Ответ 1
Оператор - это любой текст, который механизм базы данных распознает как действительную команду. Начиная с SQL-92
:
SQL-оператор представляет собой строку символов, которая соответствует формату и синтаксическим правилам, указанным в этом международном стандарте.
Запрос - это оператор, который возвращает набор записей (возможно, пустой).
Как я могу вызвать кусок кода SQL, сделанный более чем одним оператором, где операторы разделяются точкой с запятой (;)? Кто уже ответил, может отредактировать его ответ. Большое спасибо!
Ряд операторов SQL
, посланных на сервер сразу, называется пакетом.
Не все двигатели SQL
требовали, чтобы операторы в партии были разделены точкой с запятой. SQL Server
, например, обычно не выполняет и не разрывает утверждения на основе контекста. Выражение CTE
, начинающееся с WITH
, является заметным исключением.
Ответ 2
Оператор - любая команда SQL, такая как SELECT, INSERT, UPDATE, DELETE.
A запрос является синонимом оператора SELECT.
Ответ 3
Из Википедия - Элементы языка SQL
Язык SQL подразделяется на несколько элементов языка, включая:
- Клаузулы, которые являются составными компонентами операторов и запросов. (В некоторых случаях это необязательно.) [9]
- Выражения, которые могут производить либо скалярные значения, либо таблицы, состоящие из столбцов и строк данных.
- Предикаты, которые определяют условия, которые могут быть оценены для значений трехзначной логики SQL (3VL) или Boolean (true/false/unknown) и которые используются для ограничения эффектов операторов и запросов или для изменения потока программы.
- Запросы, которые извлекают данные на основе определенных критериев.
- Заявления, которые могут оказывать постоянное влияние на схемы и данные или управлять транзакциями, потоками программ, подключениями, сеансами или диагностикой.
- Операторы SQL также включают терминатор термина "точка с запятой" ( ";" ). Хотя это не требуется на каждой платформе, оно определяется как стандартная часть грамматики SQL.
- Незначительные пробелы обычно игнорируются в операторах SQL и запросах, что упрощает форматирование кода SQL для удобочитаемости.
Ответ 4
Заявление - это общий термин для части полного, правильного SQL, который вы можете отправить в СУБД. Запрос - это оператор, который будет возвращать данные, поэтому запрос является специальным выражением.
A SELECT ...
будет запросом, a DELETE...
просто инструкцией.
Ответ 5
Они используются взаимозаменяемо большинством, но некоторые часто используют слово "запрос" для обозначения, в частности, операторов SELECT
, потому что когда вы запрашиваете что-то или кого-то, вам нужна информация. И SELECT
запросы возвращают результирующие наборы, чтобы они соответствовали описанию. Это также очевидно в том, что операторы SELECT
формально называются операторами языка DQL (Data Query Language).
Ответ 6
Запросы используются для извлечения данных на основе определенных критериев, но оператор может оказывать постоянное влияние на схемы и данные или управлять транзакциями, потоком программ, соединениями, сеансы или диагностику. См. Также Wikipedia.