| select |
|
|
| where |
|
|
| fetch |
fetch rows_count rows only |
|
| order by |
|
|
| limit |
|
|
| offset |
OFFSET skipped_rows |
skipped_rows 指定跳过的行数 结合limit实现分页处理 |
| distinct |
|
|
| 列别名 |
|
|
| 表别名 |
|
|
| in |
|
|
| betwenn |
|
相当于>= ,<= |
| like |
expr LIKE pattern |
expr是文本,pattern是字符串模式,支持%和_ |
| is null |
|
|
| exists |
WHERE EXISTS(subquery); |
|
| 至少返回一行,true;否则false |
|
|
| all |
> < = 等 ALL (array) |
array 是子查询或者数组 |
| any |
|
|
| group by |
|
select后的字段(聚合函数除外)必须出现在group by;where过滤分组之前的行;having过滤分组之后的的数据 |
| having |
|
需要使用逻辑表达式作为条件,其中逻辑表达式中的列名或表达式只能使用分组使用的列,表达式,或者应用于分组列或表达式的聚合函数 |
| grouping sets |
|
必须在group by后面,可以生成多个维度的报表 |
| rollup |
|
rollup(a,b,c)=grouping sets((a,b,c),(a,b),(a),()) |
| cube |
|
CUBE(a, b, c) 等效于 GROUPING SETS((a,b,c), (a,b), (a,c), (a), (b,c), (b), (c), ()) |
| join |
|
|
| 子查询 |
|
|
| cte |
WITH [RECURSIVE] cte_name [(cte_column_list)] AS(cte_definition)primary_statement; |
recursive:递归;primary_statement 增删改查 |
| union |
union(all) |
all:不剔除重复值 |
| intersect |
|
交集 |
| except |
|
差集 |
| insert on conflict |
|
|
| update |
|
|
| update...from |
|
|
| delete |
|
|
| 清空表 |
truncate tablename |
|
| case |
CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ELSE value3 END |
|
|
|
|