SELECT语句的语法(子博客)

引言:

  MySQL 中使用 SELECT 语句来查询数据,既可以用来判断表达式,也可以从一个或多个表中查询数据。

  

  

SELECT 语句从表中查询数据的基本语法如下:

SELECT [ALL | DISTINCT] select_list

FROM table_or_view_name

[WHERE <search_condition>]

[GROUP BY <group_by_expression>]

[HAVING <search_condition>]

[ORDER BY <order_expression>] [ASC | DESC]
SELECT语法

上述语法的说明如下:

  1)SELECT 子句

    用来指定查询返回的列

  2)ALL | DISTINCT

    用来标识在查询结果计中对相同行的处理方式。

    关键字 ALL 表示返回查询结果集的所有行,其中包括重复行;

    关键字 DISTINCT 表示如果结果集又重复行,那么只显示一行,默认值为 ALL。

  3)select_list

    表示需要查询的字段列名。

    如果返回多列,各列名之间用  “  ,” 隔开;如果需要返回所有列的数据信息,则可以用 * 表示。

  4)FROM 字句

    用来指定要查询的表名或者视图名。

  5)WHERE 字句

    用来指定限定返回行的搜索条件

  6)GROUP_BY 字句

    用来指定查询结果的分组条件

  7)HAVING 字句

    与 GROUP_BY 字句组合使用,用来对分组的结果进一步限定搜索条件。

  8)ORDER_BY 字句

    用来指定结果集的排序方式

  9)ASC | DESC 

    指定排序方式。ASC (默认值)表示升序排列,DESC 表示降序排列。

说明:

  在 SELECT 语句的语法中,中括号 [ ] 的内容是可选的。

  如果有 WHERE 字句,就会按照指定的条件进行查询,否则就查询所有记录。

  如果有 GROUP_BY 字句,就会按照指定的字段进行分组;如果 GROUP_BY 字句后带着 HAVING 关键字,那么只有满足指定的条件才能输出。

  如果有 ORDER_BY 字句,就会按照指定的字段进行排序,排序方式由 ASC 和 DESC 指定。

PS:在 SELECT 语句中 FROM,WHERE。GROUP BY 和 ORDER BY 字句必须按照语法中列出的次序依次执行。

      例如,如果把 GRUOP BY 字句放在 ORDER BY 字句之后,就会出现语法错误。

原文地址:https://www.cnblogs.com/HZY258/p/8496391.html