select * from tbname where (c='可查'and a<>'语文') or (a='语文' and d<>'待审');

解决方案 »

  1.   

    select * from 
    tablename
    where c='可查'
    and (a <>'语文'
    or (a='语文' and  d<>'待审') )
      

  2.   

    select * from yourtablename where (c='可查'and a<>'语文') or (a='语文' and d<>'待审');
      

  3.   

    select *
    from table
    where (c = '可查" and a <> "语文")
    or (a = "语文" and d= '已审')
      

  4.   

    '语文'   and 非'待审'的都显示么
    还是说'语文'   and 非'待审' and 可查的显示
      

  5.   

    按我的理解我觉得应该是:
    select * from tbname where (c='可查'and a<>'语文') or (a='语文' and c='可查' and d<>'待审');
    C等于"不可查"则不显示出来,等于"可查"  ----此为是否显示的首要条件 只有可查的才有可能显示
    再判断"语文"是不是"待审" ,如果是"待审"就不显示---此为再判断的条件,如果是语文的话,再判断是否已不是"待审",如果不是"待审"才能显示.