これは非常に簡単なはずですが、答えを見つけることができません (これは、14 時間近く SQL コーディングをしているせいだと思います)。
「Label」フィールドと「ReportYear」フィールドを持つ report というテーブルがあります。「Label」の値には 3 つの可能性があることはわかっていますが、すべてのラベルに毎年のエントリがあるわけではありません。
個別のラベル リストを選択すると、次のようになります。
'Regular'
'Special'
'None'
ここで手動でデータを選択すると、2011 年と 2010 年には「Special」というラベルのエントリがないことがわかりますが、この情報をまとめるにはクエリが必要です。
'Regular' - '2012' - '5'
'Regular' - '2011' - '2'
'Regular' - '2010' - '1'
'Special' - '2012' - '3'
'Special' - '2011' - '0'
'Special' - '2010' - '0'
'None' - '2012' - '10'
'None' - '2011' - '5'
'None' - '2010' - '2'
うまくいけば、それは理にかなっています。
私はできることを知っていますSELECT Count(*), Label FROM (SELECT DISTINCT Label FROM Report) t1
...しかし、それでは?LEFT JOIN Report t2 ON t1.Label=t2.Label
? CROSS JOIN
?
私の脳は揚げられています。
ヘルプ?