0
スクリプトでNULL値を変換しようとしています.PIVOT関数も使用しています。これは私のスクリプトと "0"ピボットでヌル値を変換する
宣言@custnumのnvarchar型にNULLを変換する私の試みである(7)= '1124' 宣言@yr SMALLINT = 2016
SELECT 'Customer Orders Returned' as Description, *
FROM (
SELECT left(datename(month,r.rma_date),3) AS RetMonth,
ISNULL(COUNT(r.rma_num),0) as OrdersReturned
FROM dbo.rma r
WHERE r.cust_num = @custnum AND YEAR(r.rma_date) = @yr
GROUP BY left(datename(month,r.rma_date),3),r.rma_num
)
AS R
PIVOT
(
SUM(OrdersReturned)
FOR RetMonth
IN (Jan,Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)
)AS pvt
マイ結果:
問題の解決に役立つご意見をお寄せいただきありがとうございます。
ありがとうございます!まず、あなたのクエリの例では、選択から「*」を削除し、実際の列名を使用し、その後、使用ISNULL(ColumnNameに、0)する必要があります。これを行うために
: - 選択tablenameのISNULL(列名、0) – Ashu
*を使うのが悪い習慣である理由のもう一つの例です。 :) –
提案の皆様に感謝します。 select ISNULL(columnname、0)を試したが、それでも動作しませんでした。しかし、私は仕事をしたサイトで解決策を見つけました:COALESCE(Jan、0)Jan、COALESCE(Feb、0)、....など各列について。 – BenMasullo