nullを返すTSQL SELECTがあります。私はISNULLを使って0に置き換えようとしましたが、何らかの理由で動作しませんでした。選択テーブルには、次のカラムがありますISNULLがTSQL Selectで動作しません。
- storeID - > INT
- penaltyPercent - >小数(9,2)
- penaltyDate - >のdateTime
SELECT ISNULL(penaltyPercent, 0.0) AS penaltyPercent
FROM dbo.Penalty
WHERE (penaltyDate = (SELECT MAX(penaltyDate) AS date
FROM dbo.Penalty AS Penalty_1
WHERE (penaltyDate <= @date) AND (storeID = @storeID))) AND
(storeID = @storeID)
日付が最初のペナルティ日付の前にあるとき(ペナルティが0になるべきとき)、結果は返されません。なぜこれが機能しないのか分かりません。私は回避策がありますが、それは私を悩ませています。ここで
が使用されているデータのサンプルです:
storeID penaltyDate penaltyPercent
182 10/1/2008 12:00:00 AM 0.020000
182 11/1/2008 12:00:00 AM 0.040000
182 12/1/2008 12:00:00 AM 0.070000
あなたの答えは、それは明らかにその方法です – eKek0
ありがとう、誰も、相対的なSQLのnoobから。 – monkeypushbutton