0
我有2個表:Mysql的,最大日期格式每個關係
money_change:
id_change | id_factor | d_change | date
---------------------------------------------
1 5 0.10 2012-06-07
2 6 0.11 2012-06-07
3 5 0.12 2012-06-09
4 6 0.11 2012-06-10
5 8 1.09 2012-06-03
money_factor:
id_factor | money_base | money_change
--------------------------------------
5 'Dollar' 'Yen'
6 'Dollar' 'Euro'
7 'Euro' 'Dollar'
8 'Euro' 'Yen'
我嘗試這樣做,返回我的最新查詢貨幣對美元的變化。我指的是結果:
id_factor | d_change | date
--------------------------------------
5 0.12 2012-06-09
6 0.11 2012-06-10
我可以知道個人因素的最後日期:
SELECT MAX(date)
FROM money_change
WHERE id_factor = 6
但正如你可能知道的「美元」的各要素的最後日期?我想是這樣的:
SELECT id_factor, d_change, date
FROM money_change c
INNER JOIN money_factor f
ON f.id_factor = c.id_factor
LEFT JOIN (
SELECT MAX(date) AS date
FROM money_change
) AS Last
ON c.dRegistro = Last.date
WHERE money_base = "Dollar"
但我回:
id_factor | d_change | date
--------------------------------------
5 0.10 2012-06-07
6 0.11 2012-06-07
5 0.12 2012-06-09
6 0.11 2012-06-10
我想我需要在子查詢中輸入「其中」,但因爲它動態地爲每個因素?
你好,我不得不添加/修改:WHERE money_base = 「美元」 ORDER BY mc.date DESC ......這個工作。請更正它以評價您的答案。謝謝! – csotelo