奇妙なリクエストの一種ですが、外部結合を使用せずに、個別のTSQLクエリでデータを並べて表示することは可能ですか?私はこれを完全に複雑にしているのだろうかと思います...
これが私がやろうとしていることです:
レコードの数を取得する12のクエリがあり、それらを積み重ねるのではなく、テーブルにあるかのように右から左にレコードを表示したいと思います。
したがって、これらのクエリから:
SELECT COUNT(*) AS 'INTERNET JAN 12'
FROM dbo.CONTACT AS AA
JOIN dbo.Document AS BB
ON AA.ACCOUNTNO = BB.ACCOUNTNO
WHERE SOURCE IN ('INTERNET', 'EBAY', 'MSN', 'BING', 'GOOGLE', 'YAHOO')
AND KEY1 = 'EA'
AND MONTH(BB.Date) = 1
AND YEAR(BB.Date) = 2012
SELECT COUNT(*) AS 'INTERNET FEB 12'
FROM dbo.CONTACT AS AA
JOIN dbo.Document AS BB
ON AA.ACCOUNTNO = BB.ACCOUNTNO
WHERE SOURCE IN ('INTERNET', 'EBAY', 'MSN', 'BING', 'GOOGLE', 'YAHOO')
AND KEY1 = 'EA'
AND MONTH(BB.Date) = 2
AND YEAR(BB.Date) = 2012
...
SELECT COUNT(*) AS 'INTERNET DEC 12'
FROM dbo.CONTACT AS AA
JOIN dbo.Document AS BB
ON AA.ACCOUNTNO = BB.ACCOUNTNO
WHERE SOURCE IN ('INTERNET', 'EBAY', 'MSN', 'BING', 'GOOGLE', 'YAHOO')
AND KEY1 = 'EA'
AND MONTH(BB.Date) = 12
AND YEAR(BB.Date) = 2012
結果セットを次のようにしたいと思います。
INTERNET JAN 12 INTERNET FEB 12 ... INTERNET DEC 12
12 25 31
このような代わりに:
INTERNET JAN 12
12
INTERNET FEB 12
25
...
INTERNET DEC 12
31
これは、別のフィールドを追加して外部結合を行わなくても可能ですか?最終結果は、エンドユーザーが自動更新するためのクエリとしてこれをExcelスプレッドシートに含めることです。