sql递归
2015-06-08 21:30
369 查看
alter PROCEDURE findPlace ( @pid int --参数 ) as begin declare @c int DECLARE @p INT DECLARE @i int SET @c=0 SET @i=0 SELECT @c=(select COUNT(*) FROM pre_common_district WHERE node_id=@pid) WHILE(@c>0) begin SELECT * FROM pre_common_district WHERE node_id=@pid SELECT @p=(select TOP 1 id3 FROM pre_common_district WHERE node_id=@pid AND id1 NOT IN(SELECT TOP (@i) t.id1 FROM pre_common_district t WHERE node_id=@pid)) exec findPlace @p; SELECT @c=@c-1; select @i=@i+1; end end
相关文章推荐
- Sql和其他技巧随笔未完待续
- 数据库系列学习(六)-函数之数学函数
- SQL Server ISNULL函数和Coalesce函数替换空值的区别
- Andorid中操作数据库的insert的两种方法以及nullColumnHack
- Oracle数据库shutdown immediate被hang住的几个原因
- Oracle数据排查or业务sql优化常用SQL
- mysql数据类型
- mysql---运维角度浅谈MySQL数据库优化
- 查看oracle无效对象
- (DBA之路【二】)mysql 主流存储引擎的特点
- Redhat 6.6 mysql 5.1升级到5.6步骤
- oracle设置账户永不过期
- DMSFrame 之SqlCacheDependency(二)
- redis学习
- postgresql 数据导入导出
- 简单sql问题
- mysql-5.6.25 编译安装 和 使用 xstrabackup 备份实战 (二)
- Redmine数据库备份及搬家
- 11g查看性能慢sql的一个方法
- Greenplum 数据库安装部署(生产环境)