提取数值,注意是数值不是数字

SqlServer 2012,怎么从单价字段中提取数值?

注意是数值不是数字

image.png

霜凡 发布于 2022-3-10 15:23
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-3-10 15:25(编辑于 2022-3-10 15:46)

SELECT SUBSTRING(单价,1,CHARINDEX('元',单价)-1)

SELECT (CASE WHEN 单价 LIKE '%元%' THEN SUBSTRING(单价,1,CHARINDEX('元',单价)-1) ELSE 单价 END )

  • 霜凡 霜凡(提问者) 报错: 传递给 LEFT 或 SUBSTRING 函数的长度参数无效。
    2022-03-10 15:42 
  • Z4u3z1 Z4u3z1 回复 霜凡(提问者) 那你有不带元的 看改的
    2022-03-10 15:46 
最佳回答
0
CD20160914Lv8专家互助
发布于2022-3-10 15:24

比如????效果是什么,按你截图的来说

  • 霜凡 霜凡(提问者) 比如最后一个10.1元/提,取出来来后是10.1
    2022-03-10 15:40 
  • CD20160914 CD20160914 回复 霜凡(提问者) 楼下给你写了公式了。。以元做为分隔符号。。
    2022-03-10 15:40 
  • CD20160914 CD20160914 回复 霜凡(提问者) 你的单价这一列。。数值结束后面跟的单位有一些不是元字吧。。有其它的吧。。你看一下。。
    2022-03-10 15:46 
  • 3关注人数
  • 282浏览人数
  • 最后回答于:2022-3-10 15:46
    请选择关闭问题的原因
    确定 取消
    返回顶部