zoukankan      html  css  js  c++  java
  • SQL一次查出相关类容避免长时间占用表(下)

    /*
    server:
    db: EDI
    */
    -- 以下案例多次查询同一张表,仅有Name条件不同
    --可以使用一次查出相关类容避免长时间占用表
    USE EDI
    GO
    DECLARE @FileTypeID_X12850 int 
           ,@FileTypeID_X12832 int 
           ,@FileTypeID_X12846 int 
    SELECT TOP 1 
        @FileTypeID_X12850 = ID 
    FROM dbo.EDI_CFG_FileType WITH(NOLOCK) 
    WHERE 
        Name='X12850' 
    SELECT TOP 1 
        @FileTypeID_X12832 = ID 
    FROM dbo.EDI_CFG_FileType WITH(NOLOCK) 
    WHERE 
        Name='X12832' 
    SELECT TOP 1 
        @FileTypeID_X12846 = ID 
    FROM dbo.EDI_CFG_FileType WITH(NOLOCK) 
    WHERE 
        Name='X12846' 
    
    
    
    ---更改后
    
    use EDI
    go
    
    DECLARE @FileTypeID_X12850 int 
           ,@FileTypeID_X12832 int 
           ,@FileTypeID_X12846 int 
    
    select @FileTypeID_X12850=X12850
    		,@FileTypeID_X12832=X12832
    		,@FileTypeID_X12846=X12846
    
    --select X12850,X12832
    from
    	(
    		select ID,Name from dbo.EDI_CFG_FileType WITH(NOLOCK) 
    		where Name in('X12850','X12832','X12846')
    	) as tem
    pivot
    (
    	max(ID)
    	for
    	Name in ([X12850],[X12832],[X12846])
    )
    as piv
    select @FileTypeID_X12850
    	,@FileTypeID_X12832
    	,@FileTypeID_X12846
    

      

  • 相关阅读:
    多线程
    socket
    十一、内置模块
    十、模块与包
    Javaweb学习笔记11 JDBC
    Javaweb学习笔记10 4种范围对象
    Javaweb学习笔记9 application
    Javaweb学习笔记8 session与cookie区别
    Javaweb学习笔记7 session
    Javaweb学习笔记6 jsp页面元素
  • 原文地址:https://www.cnblogs.com/cykj/p/SQL-Avoid-occupation-downn.html
Copyright © 2011-2022 走看看