你要作动态语句? 请参考
 declare @a nvarchar(4000)
  set @a=' date between ''2004-9-1'' and ''2004-9-10'' AND person = aaronhuang '
 
 exec('select * from table where '+@a)

解决方案 »

  1.   

    估计你想写动态SQL ,定义字符串吧
      

  2.   

    你要作动态语句? 请参考
     declare @a varchar(4000)
      set @a=' date between ''2004-9-1'' and ''2004-9-10'' AND person = aaronhuang '
     
     exec('select * from table where '+@a)
      

  3.   

    declare @a varchar(4000)
    set @a=' date between cast('2004-9-1' as datetime) 
    and cast('2004-9-10' as datetime) AND person = aaronhuang '
     
    exec('select * from table where '+@a)
      

  4.   

    declare @a varchar(4000)
    set @a='b.OutDate between ''2004-9-1'' and ''2004-9-10'' and b.Deparment=''12'' and b.CustName=''23'''
    exec('select a.ProductID as 序号,b.Deparment as 领用部门,b.CustName as 领用人,a.Name as 物品名称,a.Size as 规格型号,b.Amount as 数量,a.Unit as 计量单位,b.Price as 单价,b.Money as 金额
    from tblProduct a
    right join
    tblOut b
    on a.ProductID=b.ProductID
    where '+@a)
    我怎么给他创建一个视图?
      

  5.   

    你是要把查询的结果做成一个视图???
    在select前面加上create view mytest as 就可以了吧declare @a varchar(4000)
    set @a='where b.OutDate between ''2004-9-1'' and ''2004-9-10'' and b.Deparment=''12'' and b.CustName=''23'''
    exec('create view mytest as select a.ProductID as 序号,b.Deparment as 领用部门,b.CustName as 领用人,a.Name as 物品名称,a.Size as 规格型号,b.Amount as 数量,a.Unit as 计量单位,b.Price as 单价,b.Money as 金额
    from tblProduct a
    right join
    tblOut b
    on a.ProductID=b.ProductID'+@a)