operator表记录如下idcompany idspace
  1 0
  1 0
  2 0
  2 23
  2 4
  1 0查询条件是查 idcompany =2 and idspace=23 并且把 idcompany=1 和 idcompany=2 的记录都查出来。但是那条 idcompany=2 idspace=4 的记录不要能过滤掉吗!不知道这条SQL语句怎么写!能办到吗?select * from operator where  (idcompany=2 and idspace=23) OR idcompany in (1,2) 
这样会把所有结果都列出来。我想得到的结果是idcompany idspace
  1        0
  1        0
  2        0
  2       23
  1        0请各位前辈指教!

解决方案 »

  1.   

    idcompany idspace
     1 0
     1 0
     2 0
     2 23
     2 4
     1 0为什么这条红色的不符合你的条件?并且把 idcompany=1 和 idcompany=2 的记录都查出来。
      

  2.   

    按照LZ的要求
    mysql> select * from operator where idcompany in (1,2) and idspace!=4;
    +-----------+---------+
    | idcompany | idspace |
    +-----------+---------+
    |         1 |       0 |
    |         1 |       0 |
    |         2 |       0 |
    |         2 |      23 |
    |         1 |       0 |
    +-----------+---------+
    5 rows in set (0.00 sec)
      

  3.   

    小妹妹,练练基本的SQL命令吧。