大侠们,有个语句select * Table_a where varname=varname
(其中varname是Table_a中的一个字段)但是结果里却不包含varname字段为null,
若想包含varname字段为null怎么改?

解决方案 »

  1.   

    本帖最后由 htl258 于 2011-02-20 08:18:27 编辑
      

  2.   

    CREATE TABLE Table_a (varname VARCHAR(20))
    INSERT INTO Table_a
    (
    varname
    )
    SELECT 'a' UNION ALL
    SELECT NULL SELECT * FROM Table_a WHERE isnull(varname,'')=isnull(varname,'')
    /*
    varname
    --------------------
    a
    NULL(2 行受影响)
    */
      

  3.   

    [code=SQ]select * Table_a where varname=varname or varname is null[/code]
      

  4.   

    [code=SQ]select * Table_a where varname=varname or varname is null[/code]
      

  5.   

    select * Table_a 即可.
      

  6.   

    is null或者is not null
      

  7.   

    select * from Table_a where varname=varname or varname is null
     
      

  8.   

    select * 
    from Table_a where varname is null
    是这个吗?
      

  9.   


    我的意思是有个存储过程,输入@varname,如果@varname为null,则varname字段要全选(就是我想的那句varname=varname,但是varname=null的记录却不出来),如果@varname不为null,则varname=@varname
    我的写法是:SELECT * FROM Table_a 
              WHERE varname=case when @varname is null then  varname 
                            else @varname end
              但是如果输入的@varname为null时,结果里没有出现字段varname为null的记录