[code=SQL][create table #(a varchar(10),b varchar(20))
insert # select 123,'2007-08-01'
insert # select null,'2007-08-02'
insert # select 'a22','sdfadsf'
insert # select 123,null
insert # select 'dd45',null
insert # select null,'2007-08-02aa'
insert # select null,null
select * from # where (a is not null) and ISNUMERIC(A)=0 union
select * from # where (b is not null) and ISDATE(B)=0--------------------
查询结果
NULL 2007-08-02aa
a22 sdfadsf
dd45 NULL ]

解决方案 »

  1.   

    create table #(a varchar(10),b varchar(20))
    insert # select 123,'2007-08-01'
    insert # select null,'2007-08-02'
    insert # select 'a22','sdfadsf'
    insert # select 123,null
    insert # select 'dd45',null
    insert # select null,'2007-08-02aa'
    insert # select null,null
    select * from # where (a is not null) and ISNUMERIC(A)=0 union
    select * from # where (b is not null) and ISDATE(B)=0--------------------
    查询结果
    NULL 2007-08-02aa
    a22 sdfadsf
    dd45 NULL 
      

  2.   

    sql code 的模式我怎么弄不出来?
      

  3.   

    create table #(a varchar(10),b varchar(20)) 
    insert # select 123,'2007-08-01' 
    insert # select null,'2007-08-02' 
    insert # select 'a22','sdfadsf' 
    insert # select 123,null 
    insert # select 'dd45',null 
    insert # select null,'2007-08-02aa' 
    insert # select null,null 
    select * from # where (a is not null) and ISNUMERIC(A)=0 union 
    select * from # where (b is not null) and ISDATE(B)=0 -------------------- 
    查询结果 
    NULL 2007-08-02aa 
    a22 sdfadsf 
    dd45 NULL 
      

  4.   


    select * from # where  (isnull(a,'')!='' and ISNUMERIC(A)=0) or (isnull(b,'')!='' and isdate(b)=0)