在SQL中获取整数美元金额
我正在尝试查找整数美元金额的交易(例如200.0000、5.0000、1350.0000) SQL服务器金额列是数字(38.4)类型在SQL中获取整数美元金额,sql,sql-server,tsql,Sql,Sql Server,Tsql,我正在尝试查找整数美元金额的交易(例如200.0000、5.0000、1350.0000) SQL服务器金额列是数字(38.4)类型 如何转换该列,以及转换后需要应用什么函数?您只需检查该列的截断情况即可 Select * From Table Where Amount = Cast(Amount as Int) 您只需检查列的截断 Select * From Table Where Amount = Cast(Amount as Int) 不是100%确定您想要什么,但如果您不想要任何分数
如何转换该列,以及转换后需要应用什么函数?您只需检查该列的截断情况即可
Select *
From Table
Where Amount = Cast(Amount as Int)
您只需检查列的截断
Select *
From Table
Where Amount = Cast(Amount as Int)
不是100%确定您想要什么,但如果您不想要任何分数,则只需将其转换为如下所示的整数:
SELECT CAST(COLUMN_NAME_YOU_DID_NOT_SAY AS INTEGER) AS Result
FROM TABLE_NAME_YOU_DID_NOT_SAY
不是100%确定您想要什么,但如果您不想要任何分数,则只需将其转换为如下所示的整数:
SELECT CAST(COLUMN_NAME_YOU_DID_NOT_SAY AS INTEGER) AS Result
FROM TABLE_NAME_YOU_DID_NOT_SAY
查找没有小数的值
Select *
From YourTable
where Val = floor(Val)
编辑-示例
返回
100.0000
查找没有小数的值
Select *
From YourTable
where Val = floor(Val)
编辑-示例
返回
100.0000
在美国,200.0000没有意义,因为我们使用
作为分数分隔符。这让我不确定你想要什么。您不想要任何分数吗?这些是美元金额…200.00美元、5.00美元和1350.00美元。列名是amount,所以您想要美元和美分?在美国,200.0000没有意义,因为我们使用
作为分数分隔符。这让我不确定你想要什么。您不想要任何分数吗?这些是美元金额…200.00美元、5.00美元和1350.00美元。列名是amount,所以您想要美元和美分?我叫约翰。如果还需要最后两位数字为零,比如$200.00,该怎么办?@SirOliver其中Val/100=floor(Val/100)不,您需要强制转换(字段为数字(x,2)),它将给您小数点右边的数字。@Hogan不确定我是否同意。OP正在寻找“漂亮”的整数-参见编辑-Example@JohnCappelletti嗯?他在第一条评论中就展示了他想要的东西?谢谢约翰。如果还需要最后两位数字为零,比如$200.00,该怎么办?@SirOliver其中Val/100=floor(Val/100)不,您需要强制转换(字段为数字(x,2)),它将给您小数点右边的数字。@Hogan不确定我是否同意。OP正在寻找“漂亮”的整数-参见编辑-Example@JohnCappelletti嗯?他在第一条评论中就展示了他想要的东西?