我想知道是否有一种方法可以选择特定字段的值超过同一字段最大值一半的行。
例如,我们有一个包含 3 个字段(id、name、rate)的结果集,其中 rate 是一个别名。如果 max rate 是70
这样,则查询应该返回所有行rate > 35
(即35
的一半70
)。
就像是:
SELECT * FROM (A heavy and large select)as r WHERE r.rate > MAX(rate) / 2
请注意,我不知道最大速率是多少,并且想在单个查询中完成。
update
main select 是一个非常繁重的查询,而 rate 是一个别名,因此使用 subquery for max rate 需要再次编写该繁重的查询。