[英]mysql left join max value on all rows
我有下表:
表分数:
+----+-------+
| Id | value |
+----+-------+
| 1 | 300 |
| 2 | 300 |
| 3 | 300 |
| 4 | 100 |
| 5 | 200 |
+----+-------+
由于查询的结果,我需要什么:
+----+-------+
| Id | value |
+----+-------+
| 1 | 300 |
| 2 | 300 |
| 3 | 300 |
| 4 | 300 |
| 5 | 300 |
+----+-------+
我可以通过什么查询来实现?
(这只是一个复杂查询的一部分,这将有助于最大程度地减少我的代码)
您可以使用返回最大值的查询来cross join
表:
SELECT id, max_value
FROM scores
CROSS JOIN (SELECT MAX(value) AS max_value
FROM scores) m
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.