with sub_query_name1 as (
select
xx
from
xxx
), -- 注意这里用逗号分割
sub_query_name2 as ( --注意这里没有as,上面一个as跟多个sub_query
select
xx
from
xx
)
select --正式查询语句,与上面的with as直接没有符号分割
xx
from
xx
- sub_query直接用逗号分割,一个sub_query用圆括号扩起来
- with 只能使用一次,后面跟多个sub_query
- sub_query之后必须跟上主体的查询语句(可以不用到sub_query中的表)
- with as中不能嵌套 with as
- 下面的sub_query可以使用上面生成的sub_query,比如sub_query_name2中可以使用sub_query_name1的信息