簡體   English   中英

mysql在所有行上左聯接最大值

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM