我正在尝试使用ISNUMERIC
但我的数据记录之一将其作为数字返回。有什么方法可以让查询在不删除字符函数的情况下对该数据返回 0?
Declare @Temp Table(Data VarChar(18))
Insert Into @Temp Values('750419.')
Insert Into @Temp Values('7.4')
Select Data,
IsNumeric(Data) As [IsNumeric],
From @Temp
而且我找到了一个名为但仍然不会将其返回到 0 的函数
CREATE Function [dbo].[IsInteger](@Value VarChar(18))
Returns Bit
As
Begin
Return IsNull(
(Select Case When CharIndex('.', @Value) >= 0
Then Case When Convert(int, ParseName(@Value, 1)) <> 0
Then 0
Else 1
End
Else 1
End
Where IsNumeric(@Value + 'e0') = 1), 0)
End