zoukankan      html  css  js  c++  java
  • SQL合并多表查询记录的存储过程

    思路:将查询到的记录保存进一个临时表,再在临时表中进行查询,用完后删除临时表;

    select * from dbo.PE_Nodes
    CREATE PROCEDURE [dbo].[PR_GetNodeInfoByNodeID]
    @Nodeid INT

    declare 
    @str  varchar(300),
    @id  varchar(300),
    @m  int,
    @n  int
    select * into temp from dbo.PE_Nodes where 1=0  --select * into 表A from 表B:只复制表解构,不复制数据;
    set  @str=SUBSTRING((select arrChildID from dbo.PE_Nodes where NodeIdentifier = (select NodeIdentifier from dbo.PE_Nodes where NodeID =Nodeid )),0,300)
    set  @m=CHARINDEX(',',@str) 
    set  @n=1 
    WHILE  @m>0 
    BEGIN 
           set  @id=substring(@str,@n,@m-@n) 
           set  @n=@m+1 
           set  @m=CHARINDEX(',',@str,@n)
           Insert into temp Select * from dbo.PE_Nodes where NodeID = @id --将查到的表数据插入到临时表
    END
    select * from temp
    drop table temp --删除临时表

  • 相关阅读:
    robots协议
    Java Script学习 4(转)
    Java Script学习 3(转)
    HTML 8 总结(转)
    HTML 7 (转)
    HTML 6 (转)
    HTML 5 (转)
    python类方法/实例方法/静态方法
    chromedriver下载地址
    字符编码表
  • 原文地址:https://www.cnblogs.com/zhangqs008/p/2341186.html
Copyright © 2011-2022 走看看