これが私のコードです
SELECT
CASE
WHEN Money >= 20000 THEN '$ 20,000 + '
WHEN Money BETWEEN 10000 AND 19999 THEN '$ 10,000 - $ 19,999'
WHEN Money BETWEEN 5000 AND 9999 THEN '$ 5,000 - $ 9,999'
WHEN Money BETWEEN 1 AND 4999 THEN '$ 1 - $ 4,999'
ELSE '$ 0'
END AS [MONEY],
COUNT(*) AS [#],
MAX(Money) AS [MAX]
FROM MyTable
WHERE MoneyType = 'Type A'
GROUP BY
CASE
WHEN Money >= 20000 THEN '$ 20,000 + '
WHEN Money BETWEEN 10000 AND 19999 THEN '$ 10,000 - $ 19,999'
WHEN Money BETWEEN 5000 AND 9999 THEN '$ 5,000 - $ 9,999'
WHEN Money BETWEEN 1 AND 4999 THEN '$ 1 - $ 4,999'
ELSE '$ 0'
END
ORDER BY MAX DESC
今、私の問題は、すべてのケースで結果セットに行を表示することですが、1 と 4999 の間の値がないため、その行は表示されません。私はまだその行が表示され、その列に0だけが含まれていることを望みます(もちろん最初のものを除く)。これを達成するためにコードを変更する方法を誰でも教えてもらえますか? おそらく私はそれを別の方法で行う必要があります...ありがとう!
探している結果セットの例...
| [MONEY] | [#] | [MAX] |
| $ 20,000+ | 2 | 30,000 |
| $ 10,000 - $ 19,999 | 8 | 19,000 |
| $ 5,000 - $ 9,999 | 4 | 8,000 |
| $ 1 - $ 4,999 | 0 | 0 | <-- Row currently doesn't show
| $ 0 | 12 | 0 |