选择给定多行的值

时间:2013-08-09 15:24:40

标签: mysql

这是一个非常基本的查询(与this one相关)我无法弄清楚......

假设我有一个像这样的两列表:

A  -  B
1  -  1
1  -  2
1  -  3
2  -  1
3  -  1
3  -  4

我希望得到所有不同因为的B为2或3.使用上面的例子,我想要返回的唯一结果是As 2和3.我该怎么做?

2 个答案:

答案 0 :(得分:4)

SELECT DISTINCT `A` FROM `t` AS `t1`
    WHERE NOT EXISTS (
        SELECT 1 FROM `t` 
            WHERE `t`.`A` = `t1`.`A` 
            AND `B` in (2,3)
    );

SQL Fiddle demo

答案 1 :(得分:0)

尝试使用以下代码:

select distinct a
from tbl
where B not IN(2,3)