百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>数据库> SQL中的CTE有哪些
分享文章到:

SQL中的CTE有哪些

发布时间:08/01 来源:未知 浏览: 关键词:
CTE表示公用表表达式,是一个暂时命名效果集,始终返回效果集。它是为了简化SQL查询,而被规范SQL引入的。 CTE表示公用表表达式,是一个暂时命名效果集,始终返回效果集。它是为了简化SQL查询,而被规范SQL引入的。下面本篇文章就来带大家相识一下CTE(公用表表达式),但愿对大家有所帮忙。

CTE有哪些?

公用表表达式(CTE)可以被以为是在单个SELECT,INSERT,UPDATE,DELETE或CREATE VIEW语句的施行范畴内定义的暂时效果集。CTE相似于派生表,由于它不作为对象存储,而且仅在查询期间延续。与派生表不一样,CTE可以是自援用的,而且可以在统一查询中屡次援用。【相干视频教程举荐:MySQL教程】

CTE的构造

CTE由表示CTE的表达式名称,AS关键字和SELECT语句组成。定义CTE后,可以在SELECT,INSERT,UPDATE或DELETE语句中像表或视图同样援用它。CTE也可以在CREATE VIEW语句中用作其定义SELECT语句的一局部。

CTE的根本语法构造是:

WITH Expression_Name [ ( ColumnName [1,...n] ) ]
AS
( CTE query definition )

注明:我们可以通过在SELECT,INSERT,UPDATE,DELETE或MERGE语句以前直接增加WITH子句来定义CTE。WITH子句中可以包括一个或多个逗号分隔的CTE。

运转CTE的声明是:

SELECT 
FROM expression_name;

CTE的类型

CTE有两品种型:递归和非递归。

递归CTE:是援用本身的常用表表达式。

非递归CTE,望文生义,不运用递归;他们不参照 本人。

运用CTE的益处

可读性:CTE提高了可读性。而不是将所有查询逻辑都集中到一个大型查询中,而是新建几个CTE,它们将在语句的背面组合。这使您可以获得所需的数据块,并将它们组合在终究的SELECT中。

替换视图:您可以用CTE替代视图。要是您没有新建视图对象的权限,或者您不想新建一个视图对象,由于它仅在此一个查询中运用,这很利便。

递归:运用CTE会新建递归查询,即可以调取本身的查询。当您需要处置组织构造图等分层数据时,这很利便。

限定:克制SELECT语句限定,例如援用本身(递归)或运用非肯定性函数施行GROUP BY。

排行:每当你想运用排行函数,如ROW_NUMBER(),RANK(),NTILE()等。

以上就是本篇文章的全部内容,但愿能对大家的学习有所帮忙。更多出色内容大家可以关注 百分百源码网 相干教程栏目!!!

以上就是SQL中的CTE有哪些的细致内容,更多请关注 百分百源码网 其它相干文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有150人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板