加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 将varchar值转换为int,而不会在输入不正确的情况

发布时间:2020-12-12 16:34:11 所属栏目:MsSql教程 来源:网络整理
导读:有没有办法调用Sql Server函数转换/转换而不使它们抛出异常? 基本上,我有一列包含字母数字数据,我从字段中提取值,我想显示数据为一个整数值.有时提取的数据不是数字,在这种情况下,我希望Sql Server跳过该行(返回null或0). 现在,当将nvarchar值’xxxxx’转换
有没有办法调用Sql Server函数转换/转换而不使它们抛出异常?

基本上,我有一列包含字母数字数据,我从字段中提取值,我想显示数据为一个整数值.有时提取的数据不是数字,在这种情况下,我希望Sql Server跳过该行(返回null或0).

现在,当将nvarchar值’xxxxx’转换为数据类型int时,Sql select语句失败,并导致转换失败.

我想要的是类似于C#的int.TryParse.

建议?

解决方法

select case when isnumeric(YourColumn + '.0e0') = 1 
            then cast(YourColumn as int) 
            else NULL 
       end /* case */
    from YourTable

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读