SQL中语句和查询之间的区别

blu*_*ish 33 sql database terminology

我仍然存在这种歧义:从概念上讲,SQL 语句查询之间的区别是什么?任何人都可以给出每个人的定义吗?这将是有用的,例如在以一种对每个人都清楚的方式在程序中选择变量名称时.谢谢!

另外:如何调用由多个语句组成的一大块SQL代码,其中语句由分号(;)分隔?已经回复的人可以编辑他的答案.非常感谢!

Qua*_*noi 30

一个说法是,数据库引擎识别为一个有效的命令的任何文字.截至SQL-92:

SQL语句是符合本国际标准中指定的格式和语法规则的字符串.

一个查询是返回一个记录(可能为空)的声明.

如何调用由多个语句组成的一大块SQL代码,其中语句以分号(;)分隔?已经回复的人可以编辑他的答案.非常感谢!

一次SQL发送到服务器的一系列语句称为批处理.

并非所有SQL引擎都要求批处理中的语句以分号分隔.SQL Server例如,通常不会根据上下文中断语句.CTE以...开头的陈述WITH是一个值得注意的例外.

  • "语句是数据库引擎识别为有效命令的任何文本".请告诉命令和查询之间的区别. (2认同)

Ton*_*ews 13

一个说法是任何SQL命令,如SELECT,INSERT,UPDATE,DELETE.

一个查询是一个SELECT语句的代名词.


Mic*_*Sim 10

来自维基百科 - SQL语言元素

SQL语言被细分为几个语言元素,包括:

  • 子句,是语句和查询的组成部分.(在某些情况下,这些是可选的.)[9]
  • 表达式,可以生成标量值或由数据列和行组成的表.
  • 谓词,指定可以评估为SQL三值逻辑(3VL)或布尔(真/假/未知)真值的条件,用于限制语句和查询的影响,或更改程序流.
  • 查询,根据特定条件检索数据.
  • 语句,可能对模式和数据产生持久影响,或者可能控制事务,程序流,连接,会话或诊断.
    • SQL语句还包括分号(";")语句终止符.虽然并非每个平台都需要,但它被定义为SQL语法的标准部分.
  • 在SQL语句和查询中通常会忽略无关紧要的空格,从而可以更轻松地格式化SQL代码以提高可读性.


sle*_*ske 5

一个说法是一块完整的,正确的SQL,您可以发送到一个数据库管理系统的总称。一个查询是将返回数据的语句,因此查询是一种特殊的语句。

A SELECT ...将是一个查询,DELETE...只是一个语句。