簡體   English   中英

MySQL 5.5從table2中為表1中的每個唯一ID選擇MAX

[英]MySQL 5.5 select MAX from table2 for every unique id in table1

我有兩個表:

table1        table2
column id     column id   column value
1             1           count_20
2             1           count_30
3             2           count_20
4             2           count_50
...           2           count_200
              3           count_30
              3           count_50
              3           count_200
              4           count_130
              ...         ...

我想構建一個查詢,該查詢將從table1, column id每一行table1, column id以及從table2的相應column value選擇MAX值,並將DESC縮寫為int in value column。

因此輸出應為:

table1.id     value
2             count_200  
3             count_200  
4             count_130  
1             count_30  
...           ...  

我嘗試了JOIN但是隨后,對於table2每個value (count_%) ,我都從table1獲得了相應的id

SELECT table1.id, table2.id, table2.value FROM table1
LEFT JOIN table2
ON table2.id=table1.id
WHERE table1.id<'100'
ORDER BY
CASE value
  WHEN 'count_20' THEN '20' 
END DESC,
CASE value
  WHEN 'count_30' THEN '30' 
END DESC,
CASE value
  WHEN 'count_50' THEN '50' 
END DESC,
CASE value
  WHEN 'count_130' THEN '130' 
END DESC,
CASE value
  WHEN 'count_200' THEN '200' 
END DESC;

輸出:

table1.id   table2.id   value
2           2           count_200  
3           3           count_200  
4           4           count_130  
2           2           count_50  
3           3           count_50  
1           1           count_30  
3           3           count_30  
1           1           count_20  
2           2           count_20  
...         ...  

任何幫助,將不勝感激。

試試看:

select t2.id, 
'count_' + cast(max(cast(replace(t2.value, 'count_', '') as int)) varchar) intValue
from table1 t1
join table2 t2 on t1.id = t2.id
group by t2.id
order by max(cast(replace(t2.value, 'count_', '') as int)) desc

結果是:

+----+-----------+
| ID |   VALUE   |
+----+-----------+
|  2 | count_200 |
|  3 | count_200 |
|  4 | count_130 |
|  1 | count_30  |
+----+-----------+

在這里擺弄。

http://www.w3schools.com/sql/sql_distinct.asp進行檢查。 這只會顯示一次值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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