每一個唯一的ID我有兩個表:的MySQL 5.5從表2中選擇MAX在表1
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
... ...
我想建立一個查詢,將從table2
選擇相應的column value
從table1, column id
每一行和MAX
值並在value
欄中填寫DESC
簡稱爲int
。
所以輸出應該是:
table1.id value
2 count_200
3 count_200
4 count_130
1 count_30
... ...
我在table2
試圖JOIN
但隨後,爲每一位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
... ...
任何幫助,將不勝感激。
那麼是什麼問題? – Deb 2012-04-22 00:18:56
這是一個博客文章? – 2012-04-22 00:21:27
問題是「我想構建一個查詢,它將從table1中選擇每行,列id和來自table2的相應列值的MAX值,並在值列中將DESC縮短爲int」。正如我所描述的: )我得到了我的答案,謝謝你的評論。 – mortaZa 2012-04-22 09:21:50