SQL 获取所有上级的实现方法
SQL 获取所有上级的实现方法
说明:
(1)可以做成一个函数,直接调用即可;
(2) M0Org 是数据库存在的表 ,M0OrgPID 为目标表,OrgID为ID字段,PID为上级ID字段
DECLARE @OrgID NVARCHAR(36)= '00000000-0000-0000-00000002205223459'; --获取当前机构的所有上级 放入M0OrgPID WITH M0OrgPID AS ( SELECT *, 0 AS lvl FROM M0Org WHERE OrgID = @OrgID UNION ALL SELECT d.*, lvl + 1 FROM M0OrgPID c INNER JOIN M0Org d ON c.PID = d.OrgID ) SELECT * FROM M0OrgPID;
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
-
Mysql中Join的使用实例详解
在前几章节中,我们已经学会了如果在一张表中读取数据,这是相对简单的,但是在真正的应用中经常需要从多个数据表中读取数据. 本章节我们将向大家介绍如何使用MySQL 的 JOIN 在两个或多个表中查询数据. 你可以在SELECT, UPDATE 和 DELETE 语句中使用Mysql 的 join 来联合多表查询. 以下我们将演示MySQL LEFT JOIN 和 JOIN 的使用的不同之处. 在命令提示符中使用JOIN 我们在RUNOOB数据库中有两张表 tcount_tbl 和 runoob_t
-
mysql安装配置方法图文教程(CentOS7)
一.系统环境 [root@localhost home]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) 二.mysql安装 安装mysql和mysql-devel都成功,但是安装mysql-server失败,如下: [root@localhost home]# yum install mysql-server 已加载插件:fastestmirror, langpacks Repodata is over 2 weeks
-
mysql 5.7安装 MySQL 服务无法启动但是服务没有报告任何错误
MySQL 5.7的安装有两种方式,一种是下载安装程序,点击安装,另一种是下载压缩包,直接解压,配置一下就可以运行了 个人更喜欢压缩包的形式,所以本文记录的也是压死包形式的安装(配置) https://dev.mysql.com/downloads/mysql/ 我下载的最新的是 mysql-5.7.17-win32.zip 加压到mysql-5.7.17-win32文件夹,后文提到的文件和文件夹都以此为更目录 把bin目录配置到环境变量path的后面 我的是 ;D:\mysql-5.7.17
-
mysql处理海量数据时的一些优化查询速度方法
由于在参与的实际项目中发现当mysql表的数据量达到百万级时,普通SQL查询效率呈直线下降,而且如果where中的查询条件较多时,其查询速度简直无法容忍.曾经测试对一个包含400多万条记录(有索引)的表执行一条条件查询,其查询时间竟然高达40几秒,相信这么高的查询延时,任何用户都会抓狂.因此如何提高sql语句查询效率,显得十分重要.以下是网上流传比较广泛的30种SQL查询语句优化方法: 1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描. 2.对查询
-
SQL Server 使用触发器(trigger)发送电子邮件步骤详解
sql 使用系统存储过程 sp_send_dbmail 发送电子邮件语法: sp_send_dbmail [ [ @profile_name = ] 'profile_name' ] [ , [ @recipients = ] 'recipients [ ; ...n ]' ] [ , [ @copy_recipients = ] 'copy_recipient [ ; ...n ]' ] [ , [ @blind_copy_recipients = ] 'blind_copy_recipien
-
mysql数据库常见的优化操作总结(经验分享)
前言 对于一个以数据为中心的应用,数据库的好坏直接影响到程序的性能,因此数据库性能至关重要.所以mysql数据库的优化操作大家都要有所了解,本文就主要总结了mysql数据库中常见的优化操作,下面话不多说了,来看看详细的介绍吧. 一.Index索引 将Index放第一位,不用说,这种优化方式我们一直都在悄悄使用,那便是主键索引.有时候我们可能并不在意,如果定义适合的索引,数据库查询性能(速度)将提高几倍甚至几十倍. 普通索引 作用是提高查询速度. 建表,创建索引 CREATE TABLE tbl_
-
SQL 获取所有上级的实现方法
SQL 获取所有上级的实现方法 说明: (1)可以做成一个函数,直接调用即可: (2) M0Org 是数据库存在的表 ,M0OrgPID 为目标表,OrgID为ID字段,PID为上级ID字段 DECLARE @OrgID NVARCHAR(36)= '00000000-0000-0000-00000002205223459'; --获取当前机构的所有上级 放入M0OrgPID WITH M0OrgPID AS ( SELECT *, 0 AS lvl FROM M0Org WHERE OrgID
-
SQL获取第一条记录的方法(sqlserver、oracle、mysql数据库)
Sqlserver 获取每组中的第一条记录 在日常生活方面,我们经常需要记录一些操作,类似于日志的操作,最后的记录才是有效数据,而且可能它们属于不同的方面.功能下面,从数据库的术语来说,就是查找出每组中的一条数据.下面我们要实现的就是在sqlserver中实现从每组中取出第一条数据. 例子 我们要从上面获得的有效数据为: 对应的sql语句如下所示: select * from t1 t where id = (select top 1 id from t1 where grp = t.grp o
-
C#的path.GetFullPath 获取上级目录实现方法
本文实例讲述了C#的path.GetFullPath 获取上级目录实现方法,分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: string path = new directoryinfo("../").fullname;//当前应用程序路径的上级目录 获取当前目录可以使用 复制代码 代码如下: appdomain.currentdomain.basedirectory 获取当前目录的上级目录 复制代码 代码如下: path.getfullpath("..&qu
-
sql server编写通用脚本实现获取一年前日期的方法
问题: 在数据库编程开发中,有时需要获取一年前的日期,以便以此为时间的分界点,查询其前后对应的数据量.例如: 1. 想查询截止到一年前当天0点之前的数据量,以及一年前当天0点开始到现在的数据量. 2. 想查询截止到一年前当天24点之前的数据量,以及一年前当天24点开始到现在的数据量. 3. 想查询截止到一年前当月1日0点之前的数据量,以及一年前当月1日0点开始到现在的数据量. 4. 想查询截止到一年前当月最后一天24点之前的数据量,以及一年前当月最后一天24点开始到现在的数据量. 以上这四种情况
-
四种数据库随机获取10条数据的方法
四种数据库随机获取10条数据的方法 SQL Server: 复制代码 代码如下: SELECT TOP 10 * FROM T_USER ORDER BY NEWID() ORACLE: 复制代码 代码如下: SELECT * FROM (SELECT * FROM T_USER ORDER BY DBMS_RANDOM.RANDOM()) WHERE RONUM <= 10 MySQL: 复制代码 代码如下: SELECT * FROM T_USER ORDER BY RAND() LIM
-
java获取昨天日期字符串的方法
本文实例讲述了java获取昨天日期字符串的方法.分享给大家供大家参考,具体如下: import java.text.SimpleDateFormat; import java.util.Date; public class Test { /** * 获取昨天的日期字符串 * * @param nowDate * 当前日期的字符串 * @return */ public static String getLastDayInfo(String nowDate) { String yesterday
-
PHP实现在数据库百万条数据中随机获取20条记录的方法
本文实例讲述了PHP实现在数据库百万条数据中随机获取20条记录的方法.分享给大家供大家参考,具体如下: 额,为什么要写这个? 在去某个公司面试时,让写个算法出来,当时就蒙了,我开发过程中用到算法的吗?又不是大数据开发,分析. 今天偶然想起来一个坑爹数据,如:PHP取百万条数据中随机20条记录,当时就用的算法. 1.先统计统计数据库多少条记录(这个做个数据缓存,如1小时重新统计一次), 2.根据总条数,随机1次,1次性取出20条记录(当然这个就相当于分页了,要求不高的话,这个最快,我用的就是这个)
-
Python中执行存储过程及获取存储过程返回值的方法
本文实例讲述了Python中执行存储过程及获取存储过程返回值的方法.分享给大家供大家参考,具体如下: 在Pathon中如何执行存储过程呢?可以使用如下方法: 存储过程定义基本如下: ALTER procedure [dbo]. [mysp] @Station varchar ( 50), @SN varchar ( 50), @Info varchar ( 500) output , @Msg varchar ( 500) output 1. 使用adodbapi from adodbapi i
-
SQL Server解析XML数据的方法详解
本文实例讲述了SQL Server解析XML数据的方法.分享给大家供大家参考,具体如下: --5.读取XML --下面为多种方法从XML中读取EMAIL DECLARE @x XML SELECT @x = ' <People> <dongsheng> <Info Name="Email">dongsheng@xxyy.com</Info> <Info Name="Phone">678945546</
-
PHP生成和获取XML格式数据的方法
本文实例讲述了PHP生成和获取XML格式数据的方法.分享给大家供大家参考,具体如下: 在做数据接口时,我们通常要获取第三方数据接口或者给第三方提供数据接口,而这些数据格式通常是以XML或者JSON格式传输,这里将介绍如何使用PHP生成XML格式数据供第三方调用以及如何获取第三方提供的XML数据. 生成XML格式数据 我们假设系统中有一张学生信息表student,需要提供给第三方调用,并有id,name,sex,age分别记录学生的姓名.性别.年龄等信息. CREATE TABLE `studen
随机推荐
- Asp.net MVC中Razor常见的问题与解决方法总结
- JavaScript正则表达式小结(test|match|search|replace|split|exec)
- 如果你有这33种症状了请离开电脑去走走吧!
- SQL Server 2012使用Offset/Fetch Next实现分页数据查询
- js用Date对象的setDate()函数对日期进行加减操作
- jQuery分页插件jquery.pagination.js使用方法解析
- Java异常处理中的一些特殊情况举例
- 关于系统重装后Oracle数据库完全恢复的解决办法
- ASP.NET中实现导出ppt文件数据的实例分享
- Javascript前端UI框架Kit使用指南之Kitjs简介
- php计算数组不为空元素个数的方法
- PHP用正则匹配form表单中所有元素的类型和属性值实例代码
- Python中urllib2模块的8个使用细节分享
- mongodb权限设置之添加管理员、普通用户的方法
- 浅析Javascript的自动分号插入(ASI)机制
- 在页面预览客户端本地图片的js代码(兼容FF IE)
- Java封装、继承、多态三大特征的理解
- 追求程序速度,而不是编程的速度
- 小儿用药常识 儿童注意用药
- python中WSGI是什么,Python应用WSGI详解