<分区>
现在,据我了解,当您使用诸如 AVG
、 SUM
等聚合函数时,您必须记住,您 SELECT
中未涉及聚合函数的任何其他字段都是不确定的,例如:
SELECT AVG(amount), name, desc FROM some_table;
我理解这一点,这是因为来自聚合函数的值未绑定(bind)到任何一行,因此所选的其他字段是不确定的。
但是,如果您使用不同类型的聚合函数,例如 MIN
或 MAX
,它们检索的内容 与特定行相关联,那么可以安全地假设选择的任何其他字段不是可以确定聚合函数中的 t? ... 结果会与特定的数据行相关联,这与其他聚合函数的结果不同吗?
例如:
SELECT MIN(media_id),
auction_id,
media_url
FROM auction_media
WHERE auction_id IN( 119925, 124660, 124663, 129078,
129094, 134395, 149753, 152221,
154733, 154737, 154742, 157694,
161411, 165965, 165973 )
AND media_type = 1
AND upload_in_progress = 0
GROUP BY auction_id;
如果我的想法是正确的,这将总是返回正确的 media_url
,对吗?