sql树形查询
sql:
使用Common As:递归公用表
sql:http://blog.51cto.com/tianxingzhe/1720092
/****** Script for SelectTopNRows command from SSMS ******/ --查询某个节点上的所有父节点 如果需要过滤在where后面跟过滤条件
WITH MyTest
AS (
--起始条件
SELECT id,
title,
parent
FROM tb_menu
WHERE id = 44 --列出子节点查询条件
UNION ALL --http://www.w3school.com.cn/sql/sql_union.asp
--递归条件
SELECT a.id,
a.title,
a.parent
FROM tb_menu a
INNER JOIN MyTest b --执行递归,这里就要理解下了
ON a.id = b.parent)
SELECT *
FROM MyTest; --查询父节点下面的子节点
WITH cte_child (id, title, parent, level)
AS (
--起始条件
SELECT id,
title,
parent,
0 AS level
FROM tb_menu
WHERE id = 6 --列出父节点查询条件
UNION ALL
--递归条件
SELECT a.id,
a.title,
a.parent,
b.level + 1
FROM tb_menu a
INNER JOIN cte_child b
ON (a.parent = b.id))
SELECT *
FROM cte_child;
Oracle的树形:
Oracle:https://blog.csdn.net/u014421556/article/details/51689787
Oracle树查询的最重要的就是select...start with... connect by...prior语法了。
--列出父节点的所有子节点<font></font>
SELECT *<font></font>
FROM VD_REGIONAL vr START WITH ID = '0358DEF3091E6E9AE0503F0A05020A18' CONNECT BY vr.PARENT_ID = PRIOR vr.ID;
--列出子节点的所有父节点 不要顶级父类 [WHERE vr.PARENT_ID!='0']<font></font>
SELECT *
FROM VD_REGIONAL vr START WITH ID = '2c90898b63f968f40163fc31b37c08d3' CONNECT BY vr.ID = PRIOR vr.PARENT_ID;
--条件筛选
SELECT *
FROM VD_REGIONAL vr WHERE vr.PARENT_ID!='' START WITH ID = '2c90898b63f968f40163fc31b37c08d3' CONNECT BY vr.ID = PRIOR vr.PARENT_ID;
sql树形查询的更多相关文章
- 树形查询SQL优化一例
上周五一哥们发了条SQL,让我看看,代码如下: SELECT COUNT(1) FROM (select m.sheet_id from cpm_main_sheet_history m, cpm_s ...
- Oracle树形查询
sql树形递归查询是数据库查询的一种特殊情形,也是组织结构.行政区划查询的一种最常用的的情形之一.下面对该种查询进行一些总结: start with子句: 递归的条件,需要注意的是如果with后面的值 ...
- 整理oracle 树形查询
注:本文参考了<整理oracle 树形查询> sql树形递归查询是数据库查询的一种特殊情形,也是组织结构.行政区划查询的一种最常用的的情形之一.下面对该种查询进行一些总结: create ...
- Oracle中树形查询使用方法
树形查询一般用于上下级场合,使用的特殊sql语法包括level,prior,start with,connect by等,下面将就实例来说明其用法. 表定义: create table tb_hier ...
- Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等)
Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等) 子查询 描述:查询订单数超过5的顾客信息 查询句法: var 子查询 = from c i ...
- SQL联合查询:子表任一记录与主表联合查询
今天有网友群里提了这样一个关于SQL联合查询的需求: 一.有热心网友的方案: 二.我的方案: select * from ( select a.*,(select top 1 Id from B as ...
- SQL 提高查询效率
1.关于SQL查询效率,100w数据,查询只要1秒,与您分享: 机器情况p4: 2.4内存: 1 Gos: windows 2003数据库: ms sql server 2000目的: 查询性能测试, ...
- sql语句查询
1. sql语句查询某位数字或者某几位数字开头的数据,字段类型为数字类: %’: 2. sql搜索以4开头和含有李字的数据: select * from wlzbpre_user where real ...
- SQL联合查询(内联、左联、右联、全联)的语法(转)
最近在做一个比较复杂的业务,涉及的表较多,于是在网上找了一些sql联合查询的例子进行研究使用. 概述: 联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer j ...
随机推荐
- 坐标深圳 | Kubernetes!我要用这样的姿势拥抱你
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 从去年至今,容器.Kubernetes话题的热度就持续不减,有人说基于容器 +Kubernetes 的新型 PaaS 将会成为云计算的主流: ...
- BJFU 1549 ——Candy——————【想法题】
Candy 时间限制(C/C++):1000MS/3000MS 运行内存限制:65536KByte总提交:40 测试通过:20 描述 There are N c ...
- 吴恩达《Machine Learning Yearning》总结(21-30章)
21.偏差和方差举例 前提:对于人类而言,可以达到近乎完美的表现(即人类去做分类是误差可以接近0). (1)假设算法的表现如下:训练误差率:1%,开发误差率:11%:此时即为高方差(high vari ...
- 在浏览器中对访问的网页中的cookie添加和修改
做权限相关的东西,使用到了cookie,关于它的安全性,cookie在浏览器中,通过插件是可以对其进行修改的,如下: 1.FireFox 安装Edit This Cookie 插件,之后点击插件图标即 ...
- asp.net MVC3之AJAX实现(json)
asp.net MVC3之AJAX实现(json) 分类: Asp.net MVC 2011-08-10 13:55 2272 ...
- Facade模式实现文件上传(Flash+HTML5)
一.前言 确定了渐进式增强的上传方式,接下来我们需要将上传功能从具体的业务逻辑中剥离出来,作为公共组件供业务层调用.这就要求我们必须对业务层隐藏上传细节,只暴露统一的上传API.这时候大家是不是跟我一 ...
- 深入理解Javascript之执行上下文(Execution Context)
在这篇文章中,将比较深入地阐述下执行上下文 - Javascript中最基础也是最重要的一个概念.相信读完这篇文章后,你就会明白javascript引擎内部在执行代码以前到底做了些什么,为什么某些函数 ...
- MongoDB学习之mongoose
MongoDB介绍: MongoDB是基于Javascript语言的数据库,存储格式是JSON,而Node也是基于JavaScript的环境(库),所以node和mongoDB的搭配能减少因为数据转换 ...
- LeetCode刷题系列——Add Two Numbers
题目链接 这个题目很简单,归并而已,好久没练编程,居然忘了在使用自定义类型前,要进行初始化(new操作). class ListNode{ int val; ListNode next; ListNo ...
- jquery简介(一)
摘要:简要介绍jquery的起源,以及为什么需要使用jquery. jquery的优点 jquery体量小,加载速度快,其本身具有的功能使JavaScript应用程序开发人员的工作变得分外轻松.其中最 ...