SQL Server With语句 sql server语句大全讲解

SQL Server With语句 sql server语句大全讲解

编码文章call10242024-12-19 11:41:0123A+A-

WITH AS的含义

为了让SQL语句的可读性更高些,也有可能是在UNION ALL的不同部分,作为提供数据的部分。

特别对于UNION ALL比较有用。因为UNION ALL的每个部分可能相同,但是如果每个部分都去执行一遍的话,则成本太高,所以可以使用WITH AS短语,则只要执行一遍即可。如果WITH AS短语所定义的表名被调用两次以上,则优化器会自动将WITH AS短语所获取的数据放入一个TEMP表里,如果只是被调用一次,则不会。而提示materialize则是强制将WITH AS短语里的数据放入一个全局临时表里。很多查询通过这种方法都可以提高速度。

示例:

SET DATEFIRST 1

declare @date_start varchar(20)

SET @date_start='2021-05-31'

declare @date_end varchar(20)

SET @date_end='2021-07-20'; -- 必须有分号

with

t_tree as (select CONVERT(varchar(20), min(data_date), 23)+'_'+ CONVERT(varchar(20),DATEADD(DAY,6,min(data_date)),23) as 日期 from table_name)

select 日期 from t_tree

点击这里复制本文地址 以上内容由文彬编程网整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

文彬编程网 © All Rights Reserved.  蜀ICP备2024111239号-4