首先我这样搜索了一次:[code=SQ]
select i_generic_drug1 as i_generic_drug from web_iv_examine where i_generic_drug1 in( 533,1258,1024,1367) and i_generic_drug2 in( 533,1258,1024,1367) UNION select i_generic_drug2 as i_generic_drug from web_iv_examine where i_generic_drug1  in( 533,1258,1024,1367) and i_generic_drug2 in( 533,1258,1024,1367)[/code]得出找到了533 1258 1024 ,也就是1367没找到.请问我怎样用SQL拿到1367这条没找到的数据呢?

解决方案 »

  1.   

    [code=SQ]
    select i_generic_drug1 as i_generic_drug from web_iv_examine where i_generic_drug1 in( 533,1258,1024,1367) and i_generic_drug2 in( 533,1258,1024,1367) UNION select i_generic_drug2 as i_generic_drug from web_iv_examine where i_generic_drug1  in( 533,1258,1024,1367) and i_generic_drug2 in( 533,1258,1024,1367) [/code]SQL重发一次!
      

  2.   

    按你的语句的意思,是两列同时具有这些数据,那对下列数据,可以查得出来:
    [code=SQ]create table web_iv_examine(i_generic_drug1 int,i_generic_drug2 int)
    insert into web_iv_examine select 533,1024
    insert into web_iv_examine select 1258,1367
    insert into web_iv_examine select 145,745
    insert into web_iv_examine select 1024,1258
    insert into web_iv_examine select 563,1367
    insert into web_iv_examine select 378,857
    insert into web_iv_examine select 57,756
    insert into web_iv_examine select 289,567
    go
    select i_generic_drug1 as i_generic_drug 
    from web_iv_examine 
    where i_generic_drug1 in( 533,1258,1024,1367) 
    and i_generic_drug2 in( 533,1258,1024,1367) 
    UNION 
    select i_generic_drug2 as i_generic_drug 
    from web_iv_examine 
    where i_generic_drug1 in( 533,1258,1024,1367) 
    and i_generic_drug2 in( 533,1258,1024,1367) 
    go
    drop table web_iv_examine
    /*
    i_generic_drug
    --------------
    533
    1024
    1258
    1367(4 行受影响)*/
    [/code]
      

  3.   

    create table web_iv_examine(i_generic_drug1 int,i_generic_drug2 int)
    insert into web_iv_examine select 533,1024
    insert into web_iv_examine select 1258,1367
    insert into web_iv_examine select 145,745
    insert into web_iv_examine select 1024,1258
    insert into web_iv_examine select 563,1367
    insert into web_iv_examine select 378,857
    insert into web_iv_examine select 57,756
    insert into web_iv_examine select 289,567
    go
    select i_generic_drug1 as i_generic_drug 
    from web_iv_examine 
    where i_generic_drug1 in( 533,1258,1024,1367) 
    and i_generic_drug2 in( 533,1258,1024,1367) 
    UNION 
    select i_generic_drug2 as i_generic_drug 
    from web_iv_examine 
    where i_generic_drug1 in( 533,1258,1024,1367) 
    and i_generic_drug2 in( 533,1258,1024,1367) 
    go
    drop table web_iv_examine
    /*
    i_generic_drug
    --------------
    533
    1024
    1258
    1367(4 行受影响)*/
      

  4.   

    用这个查一下数据是否存在:
    select i_generic_drug1,i_generic_drug2 
    from web_iv_examine
    where i_generic_drug1=1367 or i_generic_drug2=1367
     
    检查一下 1367 对应的另一列的值是否也在你的数据范围之内.