如果一个特定列的小数部分不为0,则T-SQL选择行

时间:2016-09-23 07:02:33

标签: sql sql-server tsql

我有一个包含其中一列的表:cost,它是十进制类型,有2 d.p。

现在我想从这个表中选择cost小数部分不为0的所有行

例如,如果cost为150.00或222.00,我不会选择该行,但我想选择cost是0.20还是123.12等。

如何在单个选择查询中完成此操作?

2 个答案:

答案 0 :(得分:5)

对于零小数部分的行Floor(cost)将等于cost,并且在小数部分为零的情况下不会出现。

SELECT *
FROM YourTable
WHERE Floor(cost) <> cost;

答案 1 :(得分:1)

select *
from table1
WHERE
convert(decimal(10,0), cost) <> cost