1
に参加し、現在、私は2つのクエリがあります。これは、アイテムの毎月の数とデータの2列が返されますSQLクエリ支援
SELECT dateadd(month, x.MonthOffset,0) as [Month], SUM(x.itemcount) as [Total] FROM (SELECT datediff(month,0, cna.impdate) as MonthOffset, count(*) as itemcount FROM myTable WHERE (emergency = 'Emergency') AND (impdate BETWEEN '" + fromDate + "' AND '" + toDate + "') GROUP BY impdate) x GROUP BY MonthOffset ORDER BY MonthOffset asc SELECT dateadd(month, x.MonthOffset,0) as [Month], SUM(x.itemcount) as [Total] FROM (SELECT datediff(month,0, cna.impdate) as MonthOffset, count(*) as itemcount FROM myTable WHERE (impdate BETWEEN '" + fromDate + "' AND '" + toDate + "') GROUP BY impdate) x GROUP BY MonthOffset ORDER BY MonthOffset asc
を。
緊急事態のない月がある場合に問題が発生します。オブジェクトを2番目のクエリに渡すので、最初のクエリから取得された列の数が2番目のクエリの数と一致しないと、範囲外のインデックスのエラーが表示されます。
月間、緊急時合計、アイテム合計の3つの列を持つことができるように、2つのクエリを一緒に参加させるにはどうすればよいですか?緊急の合計は0またはnullにすることができます。
良いのオファー緊急事態は、すべて1行あたりにあったどのように多くの月。彼が必要とするものは何でもするためにyookdのために非常に簡単でなければならない... – DRapp
私はCASE式について知らなかった。ありがとう、それはシンプルでエレガントです。 –