简介
with...as...需要定义一个sql片段,会将这个片段产生的结果集保存在内存中,
后续的sql均可以访问这个结果集和,作用与视图或临时表类似.
语法说明
-
with...as...必须和其他语句一起使用 -
with...as...是一次性的
with...as...的示例如下:
-- with table_name as(子查询语句) 其他sql
with tmp as (
select * from xxx
)
select * from tmp;
同级的多个临时表之间用,as后的子句必须用(),
with tmp1 as (
select * from xxx
),tmp2 as (
select * from xxx
)
select * from tmp1,tmp2;
with...as...使用嵌套的例子:
with tmp2 as ( with tmp1 as ( select * from xxx ) select * from tmp1 ) select * from tmp2;
优点
- 提高代码可读性(结构清晰)
- 简化sql,优化执行速度(
with子句只需要执行一次)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119633.html原文链接:https://javaforall.net
