Разница между оператором и запросом в 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.