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

richardi 2010-05-28 09:30:10
如果要实现判断字符串是否为数字,sqlserver中有没有函数,如果没有的话怎么写这个函数效率更好些?
...全文
596 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()
收集整理的SQL Server自定义函数,原文地址:http://blog.csdn.net/maco_wang 1.去除字符串中的html标记及标记中的内容 2 2. 去除字符串中连续的分割符 4 3.求第一个字符串中第二个串的个数 6 4.综合模糊查询 6 5.将十进制转成十六进制 8 6.求两个字符串中相同的汉字及字母的个数 10 7.生成n位随机字符串 11 8.取出字符串中的汉字、字母或是数字 14 9.根据字符分割字符串的三种写法 16 10.将数字转换千分位分隔形式 18 11.取汉字首字母的两个函数 20 12.根据身份证得到生日函数 23 13.根据身份证计算性别函数 24 14.将身份证的15位号码升级为18位 25 15.通过身份证获得户籍 27 16.多个数据项的字符串取指定位置字符 28 17.中缀算术转后缀算术表达式并计算的函数 29 18.人民币小写金额转大写 32 19.向左填充指定字符串 36 20.将整型数字转换为大写汉字 39 21.检查给定串是否存在于由区间及点集的结合内 39 22.根据日期返回星座 41 23.计算两个日期之间的工作日 43 24.根据年月生成日历函数 44 25.从第一个汉字开始分割字符串 47 26.过滤掉字符串中重复的字符 47 27.根据日期得到星期的函数 48 28.根据年度判断是否是闰年 49 29.完善SQL农历转换函数 50 30.自定义函数实现位操作 58 31.求某段时间内星期几的天数 61 32.根据进舍位或四舍五入来求值 63 33.字符串转成16进制函数 64 34.去掉字段中多个带区号电话号码前面的区号 65 35.SQL2000/2005字符串拆分为列表通用函数 67 36.求字符串中汉字的个数 69 37.根据年月得到当月的天数 71 38.全角半角转换函数 71

22,209

社区成员

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

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