我从查询中返回一些负值。我希望他们只是零。 如何在我的sql查询中编写一个条件,如果该值低于某个值,则返回零。
溶胶:
CASE WHEN CONVERT(float,dt.FQI53X02_101) < 1.3 THEN 0 ELSE CONVERT(float,dt.FQI53X02_101) END AS FQI53X02_101
答案 0 :(得分:7)
你在实际查询中不使用If-Then-Else(你可以使用它们,但那是别的东西)......
您使用的是案例陈述......试试这个
Select
Case When [Value] < 0 Then 0 Else [Value] End
From
Example
答案 1 :(得分:5)
如果您希望将其作为查询的一部分,请将返回值包装在CASE语句中。 MSDN的示例如下
SELECT 'Price Category' =
CASE
WHEN price IS NULL THEN 'Not yet priced'
WHEN price < 10 THEN 'Very Reasonable Title'
WHEN price >= 10 and price < 20 THEN 'Coffee Table Title'
ELSE 'Expensive book!'
END,
CAST(title AS varchar(20)) AS 'Shortened Title'
FROM titles
ORDER BY price
答案 2 :(得分:2)
( ABS(Value) + Value ) / 2
编辑 - 现在问题已经改变,这不起作用