単純な mysql リクエストを実行しようとしていますが、問題が発生しています。
以下のように定義された2つのテーブルがあります。
currencies
______________________________________________________________________________________
currency_id | currency_name | currency_symbol | currency_active | currency_auto_update
exchange_rates
____________________________________________________________________________________________________
exchange_rate_id | currency_id | exchange_rate_date | exchange_rate_value | exchange_rate_added_date
私がやりたいことはexchange_rates
、アクティブな通貨の最後の行を選択することです。
私はこのようにしました:
SELECT c.currency_id, c.currency_name, c.currency_symbol, c.currency_active, er.exchange_rate_id, er.exchange_rate_date, er.exchange_rate_value
FROM currencies c
LEFT JOIN (
SELECT er1.exchange_rate_id, er1.currency_id, er1.exchange_rate_date, er1.exchange_rate_value
FROM exchange_rates er1
ORDER BY er1.exchange_rate_date DESC
LIMIT 1
) AS er
ON er.currency_id=c.currency_id
WHERE c.currency_active='1'
一致する行がある場合でもNULL
、テーブルから値が返されますexchange_rates
削除しようとしましLIMIT 1
たが、このようにすると、アクティブな通貨のすべての行が返されます。これは私が望む解決策ではありません
このクエリはどのように表示されますか?
ありがとう!