![]() |
玉树临风的野马 · 如何在PL/SQL上显示添加连字符的字符串开 ...· 1 月前 · |
![]() |
正直的棒棒糖 · 从 SQL 迈向 SOQL | ...· 1 月前 · |
![]() |
帅气的牛肉面 · 【SQL】COUNT()函数 ...· 1 月前 · |
![]() |
近视的烈马 · 思考遇到HTTP的链接报错 - ...· 5 月前 · |
![]() |
爱旅游的椅子 · 可解释性机器学习task01-预备知识_ma ...· 8 月前 · |
![]() |
眼睛小的佛珠 · sql count 默认值-掘金· 1 年前 · |
![]() |
大力的面包 · 迭代语句 - for、foreach、do ...· 1 年前 · |
我正在尝试将一个存储为varchar的值存储在一个十进制字段中。
下面的示例都会导致:“将数据类型varchar转换为numeric时出错。”
这里我漏掉了什么?
SELECT CONVERT(decimal(11,2), '6.999,50')
SELECT CONVERT(decimal(11, 2), '6.999,50')
SELECT CAST('6.999,50' AS decimal) / 100.0
SELECT CAST((CAST('6.999,50' AS decimal) / 100000) AS decimal(17,5))
您忽略了6.999,50不是有效小数的事实。你不能在十进制值中有逗号和小数点吗?它应该是什么号码?
假设您的区域设置指定。作为分组和作为小数分隔符:要删除分组数字:
SELECT CONVERT(decimal(11,2), REPLACE('6.999,50', '.', ''))
将产生小数形式的6999,50
我怀疑是你的语言环境设置。您的区域设置使用逗号作为小数点,句点作为分隔符。您的sql服务器可能设置为默认的美国英语,反之亦然,句点作为小数点,逗号作为分隔符。
Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
扫码关注腾讯云开发者
领取腾讯云代金券