更改此查询以对行进行分组,并过滤除具有最小值的行以外的所有行 [英] Changing this query to group rows and filter out all rows apart from the one with smallest value
本文介绍了更改此查询以对行进行分组,并过滤除具有最小值的行以外的所有行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我设置了以下结果:
275 72.87368055555555555555555555555555555556 foo
275 72.87390046296296296296296296296296296296 foo
113 77.06431712962962962962962962962962962963 foo
113 77.07185185185185185185185185185185185185 foo
我从此查询中获得的
:
that I got from this query:
SELECT id, (tbl2.date_modified - tbl1.date_submitted)/86400, some_value
FROM tbl1, tbl2, tbl3
WHERE tbl1.id = tbl2.fid
AND tbl1.id = tbl3.fid
如何更改它以获取此信息:
How can I change it to get this:
275 72.87368055555555555555555555555555555556 foo
113 77.06431712962962962962962962962962962963 foo
即仅获取最小的行 some_number
子查询或其他内容?
非常感谢:).
推荐答案
如果some_value
是字段名称:
SELECT id, min((tbl2.date_modified - tbl1.date_submitted)/86400), max(some_value)
FROM tbl1, tbl2, tbl3
WHERE tbl1.id = tbl2.fid
AND tbl1.id = tbl3.fid
GROUP BY tbl1.id
如果some_value
是一些常量字符串:
if some_value
is a some constant string :
SELECT id, min((tbl2.date_modified - tbl1.date_submitted)/86400), 'some_value'
FROM tbl1, tbl2, tbl3
WHERE tbl1.id = tbl2.fid
AND tbl1.id = tbl3.fid
GROUP BY tbl1.id
这篇关于更改此查询以对行进行分组,并过滤除具有最小值的行以外的所有行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文