更新时间:2024-11-08 GMT+08:00

基本语句

功能描述

基本的查询语句,返回查询结果。

语法格式

1
2
3
4
5
6
7
SELECT [ALL | DISTINCT] attr_expr_list FROM table_reference
  [WHERE where_condition]
  [GROUP BY col_name_list]
  [ORDER BY col_name_list][ASC | DESC]
  [CLUSTER BY col_name_list | DISTRIBUTE BY col_name_list]
  [SORT BY col_name_list]]
  [LIMIT number];

关键字

表1 SELECT关键字说明

参数

描述

ALL

ALL关键字用于返回数据库所有匹配的行,包括重复的行。ALL关键字的后面只能跟*,否则执行语句会出错。

ALL是SQL语句的默认行为,通常不会被明确写出,如果不指定ALL或DISTINCT,查询结果将包含所有的行,即使是重复的行数据也将被返回。

DISTINCT

在SELECT语句中使用DISTINCT关键字时,系统会在查询结果中去除重复的数据,确保结果的唯一性。

WHERE

指定查询的过滤条件,支持算术运算符、关系运算符和逻辑运算符。

where_condition

过滤条件。

GROUP BY

指定分组的字段,支持单字段及多字段分组。

col_name_list

字段列表。

ORDER BY

对查询结果进行排序。

ASC/DESC

ASC为升序,DESC为降序,默认为ASC。

CLUSTER BY

为分桶且排序,按照分桶字段先进行分桶,再在每个桶中依据该字段进行排序,即当DISTRIBUTE BY的字段与SORT BY的字段相同且排序为降序时,两者的作用与CLUSTER BY等效。

DISTRIBUTE BY

指定分桶字段,不进行排序。

SORT BY

将会在桶内进行排序。

LIMIT

对查询结果进行限制,number参数仅支持INT类型。

注意事项

  • 所查询的表必须是已经存在的表,否则提示查询错误。
  • 在DLI管理控制台提交SQL语句读取binary类型的数据进行展示时,会对binary数据进行Base64转换。

示例

将表student中,name为Mike的数据记录查询出来,并根据字段score升序排序。

1
2
3
SELECT * FROM student
  WHERE name = 'Mike'
  ORDER BY score;