如何在T-SQL中创建If-Then-Else

时间:2009-07-05 15:03:31

标签: sql sql-server tsql

我从查询中返回一些负值。我希望他们只是零。 如何在我的sql查询中编写一个条件,如果该值低于某个值,则返回零。

溶胶:

CASE WHEN  CONVERT(float,dt.FQI53X02_101)  <  1.3  THEN 0 ELSE CONVERT(float,dt.FQI53X02_101) END AS  FQI53X02_101

3 个答案:

答案 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

编辑 - 现在问题已经改变,这不起作用