惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
Vercel News
Vercel News
F
Fortinet All Blogs
月光博客
月光博客
G
Google Developers Blog
博客园 - Franky
GbyAI
GbyAI
The Cloudflare Blog
I
InfoQ
雷峰网
雷峰网
WordPress大学
WordPress大学
罗磊的独立博客
大猫的无限游戏
大猫的无限游戏
T
The Blog of Author Tim Ferriss
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 聂微东
小众软件
小众软件
腾讯CDC
B
Blog
量子位
V
V2EX
S
SegmentFault 最新的问题
Google DeepMind News
Google DeepMind News

博客园 - 大天使泰瑞尔

通过反射机制控制前台的数据项的显示和隐藏 由partition看窗口函数 IE 6下CSS浮动样式的问题 ASP.NET 2.0 中控件的简单异步回调 新手基础知识专用 今天终于学会了从客户端调用Web Service 学会了ASP.NET 2.0中的数据批量更新 - 大天使泰瑞尔 - 博客园 数据结构学习(6):队列 数据结构学习(5):链表 数据结构学习(4):栈 数据结构学习(3):堆化优先队列 数据结构学习(2):汉诺塔问题 数据结构学习(1):搜索二叉树 冒泡算法的三种JavaScript表示 YUI学习(1):ToolTip的用法 XML学习失误系列(2):分清节点性质,使用nodeValue JavaScript&DHTML特效学习(1):MSN提示框 YUI的Drap&Drop对IE7不支持 Gmail邮箱可以直接注册了
转载一篇拼SQL字符串的语句
大天使泰瑞尔 · 2008-07-08 · via 博客园 - 大天使泰瑞尔

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
goALTER    PROCEDURE [dbo].[T_Consultation_Select] 
    
@ConsultationStyleID TINYINT,
    
@AnswerUserID VARCHAR(30),
    
@IncomeCallBeginTime [DATETIME],
    
@IncomeCallEndTime [DATETIME]
    
AS
    
BEGIN
        
DECLARE @whereStr VARCHAR(8000),
        
@count INT
        
SET @count=0
        
SET @whereStr=''
        
IF  @ConsultationStyleID IS NOT NULL
          
BEGIN
               
IF(@count>0)
                
BEGIN
                 
SELECT @whereStr=@whereStr+'    AND T_Consultation.ConsultationStyleID  ='+Convert(Varchar(10),@ConsultationStyleID)
             
END
        
ELSE
             
BEGIN
                 
SELECT @whereStr=@whereStr+'  T_Consultation.ConsultationStyleID ='+Convert(Varchar(10),@ConsultationStyleID)
               
END
          
SET  @count=@count +1
           
END
           
IF  @AnswerUserID IS NOT NULL
          
BEGIN
               
IF(@count>0)
                
BEGIN
                 
SELECT @whereStr=@whereStr+'    AND T_Consultation.AnswerUserID  ='''+Convert(Varchar(10),@AnswerUserID)''
             
END
        
ELSE
             
BEGIN
                 
SELECT @whereStr=@whereStr+'  T_Consultation.AnswerUserID ='''+Convert(Varchar(10),@AnswerUserID)''
               
END
          
SET  @count=@count +1
           
END
            
IF @IncomeCallBeginTime IS NOT NULL
                
BEGIN
                    
IF(@count>0)
                        
BEGIN
                             
SELECT @whereStr=@whereStr+' AND  T_Consultation.CreateTime >=''+ CONVERT(VARCHAR(10),@IncomeCallBeginTime)'''
                        
END
            
ELSE
                    
BEGIN
                       
SELECT @whereStr=@whereStr+'  T_Consultation.CreateTime >='' + CONVERT(VARCHAR(10),@IncomeCallBeginTime)'''
                    
END        
                
END
             
IF @IncomeCallEndTime IS NOT NULL
                
BEGIN
                    
IF(@count>0)
                        
BEGIN                                                                                                            
                             
SELECT @whereStr=@whereStr+' AND  T_Consultation.CreateTime <='' + CONVERT(VARCHAR(10),@IncomeCallEndTime)'''
                        
END
            
ELSE
                    
BEGIN
                       
SELECT @whereStr=@whereStr+'  T_Consultation.CreateTime <='' + CONVERT(VARCHAR(10),@IncomeCallEndTime)'''
                    
END        
                
END
           
IF(@count>0)
            
SELECT @whereStr='SELECT [CreateTime]
  FROM T_Consultation WHERE T_Consultation.FollowUpMark=
'+'1'+'  And ' + @whereStr
   
ELSE
   
SELECT @whereStr='SELECT ConsultationID,(SELECT ParaName FROM T_SysPara WHERE GroupID=14 AND ParaID=T_Consultation.ConsultationStyleID)AS ConsultationStyleID,
            [ConsultationContent],[ConsultationResults],(SELECT ParaName FROM T_SysPara WHERE GroupID=16 AND ParaID=T_Consultation.HaveOrderingIntention)AS HaveOrderingIntention,[OrderingIntentionContent],
  [CustomerID],[AnswerUserID],[CreateTime]
  FROM T_Consultation where  T_Consultation.FollowUpMark=
'+'1' 
END
select  (@whereStr)