请问sqlserver判断字符串是否为数字用什么函数?

richardi 2010-05-28 09:30:10
如果要实现判断字符串是否为数字,sqlserver中有没有函数,如果没有的话怎么写这个函数效率更好些?
...全文
629 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
feilniu 2010-05-28
  • 打赏
  • 举报
回复

DECLARE @string varchar(100)
SET @string = '0123.45'
SELECT ISNUMERIC(@string)
IF @string NOT LIKE '%[^0-9]%'
AND @string LIKE '[1-9]%' --如果还希望首位不能是0的话
BEGIN
SELECT @string + ' 是整数'
SELECT CAST(@string AS int)
END
ELSE
BEGIN
SELECT @string + ' 不是整数'
END
幸运的意外 2010-05-28
  • 打赏
  • 举报
回复
isnumeric() 这个函数可以判断,字符串是不是纯数字。
richardi 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xys_777 的回复:]
SQL code
isnumeric()
[/Quote]

我没说清楚,我想判断字符串是否为整数,用isnumeric不准确的
挨踢直男 2010-05-28
  • 打赏
  • 举报
回复
ascii()返回值 是 48到57的就是数字了
永生天地 2010-05-28
  • 打赏
  • 举报
回复
isnumeric()

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧