SQL 查询CET使用领悟
用到sql的遍历循环查询,如果不考虑用CET,估计又到了自己造轮子的时代了,现在觉得sql的CET确实是个好东西,针对SQL的递归查询,很是不错的方法;
with etcRecommandINfo2(c_PRecommendNo,c_RecommendName,c_RecommendNo,i_Rtype,c_ServerDir,c_Pic_Recommend,tLevel) as (select c_PRecommendNo,c_RecommendName,c_RecommendNo,i_Rtype,c_ServerDir,c_Pic_Recommend,0 AS tLevel from Recommend where c_RecommendNo='RC20150514142804'union allselect rd.c_PRecommendNo,rd.c_RecommendName,rd.c_RecommendNo,rd.i_Rtype,rd.c_ServerDir,rd.c_Pic_Recommend,et.tLevel+1 from Recommend rd inner join etcRecommandINfo2 et on et.c_PRecommendNo=rd.c_RecommendNo ) select c_PRecommendNo,c_RecommendName,c_RecommendNo,i_Rtype,c_ServerDir,c_Pic_Recommend,tLevel from etcRecommandINfo2;
看完这段代码,你也许醉了,其实这段代码,主要就是用到了CET,先说说这个用到查询的这个表:
c_RecommendNo |
标识表中唯一 |
c_PRecommendNo |
标识该条数据的上一条数据 |
这是主要的2个字段,这两个字段是递归的根源。
这个语句可以按3步来理解,如下图:
1、查询基础数据;
2、基础数据关联条件,查询全部数据;
3、将查询的数据,通过with归类显示处理;
*************************************************************
**************************************************************
备注:语句2中on后面语句也很关键,=左右的顺序不能互换,互换之后,查询的结果也不相同;记得理解的顺序很关键,理解了顺序,就能查询自己想要的结果;
CET的详细内容可以参考链接:
http://www.cnblogs.com/kissdodog/archive/2013/06/24/3153012.html
转载于:https://www.cnblogs.com/xibei666/p/4503765.html
SQL 查询CET使用领悟相关推荐
- MyBatis原理分析之四:一次SQL查询的源码分析
上回我们讲到Mybatis加载相关的配置文件进行初始化,这回我们讲一下一次SQL查询怎么进行的. 准备工作 Mybatis完成一次SQL查询需要使用的代码如下: Java代码 String res ...
- sql查询返回xml数据之应用【转载】
sql查询返回xml数据之应用[转载] 今天查看邮件,看到一标题Using the FOR XML Clause to Return Query Results as XML,点进去看了看,以前也是知 ...
- python查询sqlserver视图_基于odoo11上的SQL查询构建一个新的视图或模型
我正在研究一个奥多模块.在 我希望我的模块是一个"报告"大多数购买的产品(按客户).在 我已经在Odoo上创建了一个视图,但是现在,我需要按客户"过滤"这些视图 ...
- php yii orm,Yii中的sql查询的位置(或任何支持ORM的框架)?
对于使用MVC体系结构的项目,这是更多的编码风格问题. 我正在使用Yii框架开展一个项目. 每个数据库表都有它自己的模型类,可以让我充分利用Yii的活动记录. 凉. 但是现在我需要用一个复杂的逻辑和大 ...
- SQL查询语句 select 详解
查询select: 1.单表查询 2.多表查询 3.嵌套查询分类 1)单表查询 2)多表查询 A.连接查询 B.子查询 ①一般子查询 ②相关子查询*************************** ...
- php 优化sql,php – 优化此SQL查询
这个SQL查询让我感到厌恶.我没有写它,但它是我们服务器问题的一个重要原因.我愿意将它分成多个查询并通过PHP进行一些处理(比如,RAND()). $sql = "SELECT a.code ...
- SQL 查询总是先执行SELECT语句吗?你们都错了!
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 译者:无明 链接:infoq.cn/article/Oke8hgi ...
- MySQL番外篇:一条SQL查询语句是如何执行的?
在面试的过程中,有的面试官会给出一条简单的SQL查询语句,让简单说一下执行的过程. SELECT * FROM emp where age=30; 以下问MySQL的基本架构图,从中可以看出SQL语句 ...
- SQL查询语句总是先执行SELECT?你们都错了。。。
来源 | infoq.cn/article/Oke8hgilga3PTZ3gWvbg 很多 SQL 查询都是以 SELECT 开始的.不过,最近我跟别人解释什么是窗口函数,我在网上搜索"是否 ...
- R语言构建仿真数据库(sqlite)并使用dplyr语法和SQL语法查询数据库、将dplyr语法查询语句翻译为SQL查询语句
R语言构建仿真数据库(sqlite)并使用dplyr语法和SQL语法查询数据库.将dplyr语法查询语句翻译为SQL查询语句 目录
最新文章
- 剑指offer_第1题_二维数组中的查找
- schema类SpringMVC+Hibernate+Spring整合(二)
- 怎样用modelsim做后仿真
- 安装OpenResty(Nginx+Lua)开发环境
- centos6mysql编译安装_centos6编译安装MySQL
- 研究表明:满面笑容者,最有可能写出有影响力的论文!
- 【资源下载】《Pytorch模型训练实现教程》(附下载链接)
- perl 字符串删除末尾几个字符_perl 第六弹 变量 II
- 词法分析程序 LEX和VC6整合使用的一个简单例子
- bluez 设置绑定pin码_「RT-Thread笔记」IO设备模型及PIN设备
- git 日常用法记录
- Java基础IO流(案例源码)【六】
- Broadcasting in Python
- mysql中临时字段_MySQL临时表
- linux不能打开流的函数为,详解 4 种电脑提示“无法访问函数不正确”的解决方法...
- Ansible9:变量之Fact
- nfc卡模式与标准模式_解析目前NFC具有的三种工作模式
- python 画雷达图设置背景颜色
- 《Redis开发与运维》阅读笔记:键管理之单个键管理
- GBase 8c产品架构