DateDiff 関数を使用して日付間の日数を見つける単純なクエリを実行しています。ただし、特定のインスタンスに関しては、(null ではなく) 空白のフィールドにデータを入力したいと考えています。
このようなものは私が現在持っているもので、正常に動作しているようです (ただし、null が入力されます)。
[Test (Years)] = CASE WHEN TYPE IN ('A','B')
THEN NULL ELSE IsNull(CONVERT(decimal(28,12),
(DATEDIFF(d,@StartDate,ExpirationDate)))/365,0) END
このようなことを試してみると...すべてのTYPE AとBを変換して空白を入力しようとすると、次のエラーメッセージが表示されます。Error converting data type varchar to numeric.
[Test (Years)] = CASE WHEN TYPE IN ('A','B')
THEN '' ELSE IsNull(CONVERT(decimal(28,12),
(DATEDIFF(d,@StartDate,ExpirationDate)))/365,0) END
私が見逃している簡単なことはありますか?小数に変換せずに計算してみましたが、うまくいかないようです。何か案は?ありがとう