(我不知道如何标题这个问题) 我有一张桌子说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语句来做这个。
这可能吗?
答案 0 :(得分:0)
你应该尝试类似的东西:
Select f1, f2, MAX(f3) from t1
where f3 IN (0, 10)
group by f2;