如何 return 一个负数的空值?
How do I return a null value for a negative number?
我正在尝试对我创建的字段执行额外的聚合计算,但由于某些值为负数,它会扰乱平均值。如果值为 0
,它也会与平均值混淆,因此将这些负值视为 NULL
.
很重要
我认为我可能需要在现有查询之上进行 NULLIF
计算,但语法似乎不接受 <0
,而且我找不到任何合适的方法语法是。
SELECT
NULLIF(DATEDIFF(day,deposit_date,acceptance_date),<0) AS 'Days until Acceptance'
FROM data
按照上面的建议,试试:
SELECT
CASE
WHEN DATEDIFF(day,deposit_date,[acceptance date]) < 0 THEN NULL
ELSE DATEDIFF(day,deposit_date,[acceptance date])
END AS [Days until Acceptance]
FROM data
此外,您的某些名称不符合 SQL 语法要求,因此已在我的回答中进行了更改。
我正在尝试对我创建的字段执行额外的聚合计算,但由于某些值为负数,它会扰乱平均值。如果值为 0
,它也会与平均值混淆,因此将这些负值视为 NULL
.
我认为我可能需要在现有查询之上进行 NULLIF
计算,但语法似乎不接受 <0
,而且我找不到任何合适的方法语法是。
SELECT
NULLIF(DATEDIFF(day,deposit_date,acceptance_date),<0) AS 'Days until Acceptance'
FROM data
按照上面的建议,试试:
SELECT
CASE
WHEN DATEDIFF(day,deposit_date,[acceptance date]) < 0 THEN NULL
ELSE DATEDIFF(day,deposit_date,[acceptance date])
END AS [Days until Acceptance]
FROM data
此外,您的某些名称不符合 SQL 语法要求,因此已在我的回答中进行了更改。