我正在尝试从mysql db中选择不同的记录。但我无法做到这一点。
这是表格:
id, f2, f3, f4
1, a1, mytext, t1
2, a2, mytext, t2
3, a2, mytext, t3
4, a3, mytext, t4
5, a1, mytext, t5
6, a5, mytext, t6
我正试图获得截然不同的f2结果:
id, f2, f3, f4
3, a2, mytext, t3
4, a3, mytext, t4
5, a1, mytext, t5
6, a5, mytext, t6
可以告诉我什么是精确的SQL查询?
答案 0 :(得分:2)
SELECT a.*
FROM tableName a
INNER JOIN
(
SELECT f2, MAX(f4) maxVal
FROM tableName
GROUP BY f2
) b ON a.f2 = b.f2 AND
a.f4 = b.maxVAL
答案 1 :(得分:0)
如果你真的在寻找distinct
然后在这里你的sql
SELECT distinct f2 ,id, f3, f4 FROM TableName
group by f2
编辑:
这正是你想要的demo here
答案 2 :(得分:-1)
如果您有更多信息,则可以根据您的要求对查询进行更优化。
SELECT * FROM mytable GROUP BY f2