Mysql - 过滤掉没有内部联接的行

时间:2014-05-07 15:12:07

标签: mysql join where

(我不知道如何标题这个问题) 我有一张桌子说t1有3个字段。

 f1----f2----f3
 1     v1     0
 2     v2     0
 3     v3     0
 4     v2    10
 5     v3    10

如果f3 = 0 or f3 = 10,我想从表格中获取值。但是,如果有f3 = 10的记录,则会覆盖0。 为了更容易理解,

Q1: select * from t1 where f3 = 0  => returns (1,v1,0), (2,v2,0), (3,v3, 0)
Q2: select * from t1 where f3 = 10 => returns           (2,v2,10),(3,v3,10)

我想要的是(1,v1,0), (2,v2,10), (3,v3,10)。我想在where条件中使用一些简单的if语句来做这个。 这可能吗?

1 个答案:

答案 0 :(得分:0)

你应该尝试类似的东西:

 Select f1, f2, MAX(f3) from t1
 where f3 IN (0, 10)
 group by f2;