概要を作成するために、オプション ボリュームのレポート データを取得しようとしています。私のクエリは現在これです:
select concat(contract, ',', group_concat(traded), ',', sum(traded))
from
(
select contract, put_call, sum(oov+gv+pv) as traded
from report_data
where contract <> "AO" and date = '2013-01-30'
group by contract, put_call
order by contract asc, put_call asc
) temp
group by contract
戻り値:
7A,9600,0,9600
BV,100,400,500
WA,0,900,900
WM,500,500
WZ,0,0
最後の 2 行に数字がないのは、この日にデータベースに WM、WZ 限月のプットしかないためです。これは、7A または WA とは対照的です。7A または WA では、プットとコールの両方のデータがありますが、出来高はありません (したがってゼロ)。
コントラクトのプット (またはコール) がないゼロを生成するために、テーブルを結合または結合しようとしましたが、それを理解できないようです。
助言がありますか?
====================================
より簡単:
データ:
Contract Put_call Traded OtherData
A P 10 blah
A C 5 blah
B P 10 blah
B C 0 blah
C P 10 blah
クエリの結果は次のようになります。
A, 5, 10, 15
B, 0, 10, 10
C, 0, 10, 10
私のクエリは現在これを返します:
A, 5, 10, 15
B, 0, 10, 10
C, 10, 10
ゼロ取引のデータとは対照的に、データがまったくないため、C コントラクト コールのゼロが欠落しています。
これが理にかなっている場合はお知らせください。