想不出来 在网上也找不到   求指教啊 

解决方案 »

  1.   

    select * from tb
     where exists(select 1 from substring(身份证号,11,4)=substring(a.身份证号,11,4)
                          and id<>a.id)
      

  2.   

    select *  from 表 
    where  case len(身份证号) when 18  then  substring(身份证号,9,15)=covert(varchar(6),getdate(),12) when 15  then substring(身份证号,7,13)=covert(varchar(6),getdate(),12)
      

  3.   

    select *  from 表 
    where  case len(身份证号) 
    when 18  then  substring(身份证号,9,15)=covert(varchar(6),getdate(),12) 
    when 15  then substring(身份证号,7,13)=covert(varchar(6),getdate(),12) 
    end 
      

  4.   

    select * from tb
     where substring(身份证号,11,4)=right(convert(varchar(10),GETDATE(),112),4)
      

  5.   

    select *  from 表 
    where  case len(身份证号) 
    when 18  then  substring(身份证号,11,15)=right(covert(varchar(6),getdate(),12) ,4)
    when 15  then substring(身份证号,9,13)=tringht(covert(varchar(6),getdate(),12) ,4)
    end