我正在尝试查找具有圆形美元金额的交易(例如200.0000,5.0000,1350.0000)。
SQL服务器数量列是NUMERIC(38.4)类型。
如何转换它以及我需要在之后应用哪些功能?
答案 0 :(得分:4)
查找没有小数的值
Select *
From YourTable
where Val = floor(Val)
编辑 - 示例
Declare @YourTable table (Val decimal(10,4))
Insert Into @YourTable values
(100.25),
(5.00),
(100.00)
Select *
From @YourTable
where Val/100 = floor(Val/100)
<强>返回强>
100.0000
答案 1 :(得分:2)
您只需检查列的截断情况即可。
Select *
From Table
Where Amount = Cast(Amount as Int)
答案 2 :(得分:0)
不是100%确定你想要什么,但如果你不想要任何分数,那么只需要转换为这样的整数:
SELECT CAST(COLUMN_NAME_YOU_DID_NOT_SAY AS INTEGER) AS Result
FROM TABLE_NAME_YOU_DID_NOT_SAY