私は MySQL を使用しており、3 つの異なるテーブルからデータを取得しようとしていますが、使用すべき構文がわかりません。
次のフィールドを持つ full_daily_data_1 というテーブルがあります Symbol Trade_Date Day_Open Day_High
次のフィールドを持つ custom_indices_xref というテーブルもあります。
そして、次のフィールドを持つ Daily_index_weightings というテーブル: Custom_Index_Name Symbol Trade_date コンボ_重み付け
現在、2 つのテーブルから必要なデータを取得するための select ステートメントとしてこれを使用しています。
SELECT
Symbol,
Trade_Date,
Day_Open,
Day_High
FROM
full_daily_data_1
WHERE
trade_date >= '2012/01/01' AND
trade_date <= '2012/01/31' AND
symbol in (SELECT symbol from custom_indices_xref WHERE Custom_Index_Name = 'Agricultural-Chemical-and-Fertilizer-Stocks');
しかし、私が欲しいのは、日付範囲シンボルの各日付の各シンボルの次のデータです
したがって、基本的には、選択した日とシンボルに対して、daily_index_weightings テーブルからcombo_weighting を追加する必要があります。これを達成するには、私の SQL ステートメントはどのように見えるべきですか?
これを試しましたが、SQL 構文エラーが発生するため、何が間違っているのかわかりません。
SELECT
full_daily_data_1.Symbol,
full_daily_data_1.Trade_Date,
full_daily_data_1.Day_Open,
full_daily_data_1.Day_High,
full_daily_data_1.Day_Low,
daily_index_weightings.combo_weighting
FROM
full_daily_data_1
WHERE
trade_date >= '2012/01/01' AND
trade_date <= '2012/01/31' AND
Symbol in (SELECT symbol from custom_indices_xref WHERE Custom_Index_Name = 'Agricultural-Chemical-and-Fertilizer-Stocks')
JOIN
daily_index_weightings ON
daily_index_weightings.symbol = full_daily_data_1.Symbol AND
daily_index_weightings.Trade_Date = full_daily_data_1.Trade_Date ;