回 帖 发 新 帖 刷新版面

主题:提取字段的特定字符参加计算的SQL语句如何写....?

有如下数据表:

数量   单位
100    10/KG
200    5/G
150    15/KG
50     200/G
...    ...

注:单位的格式是 数值/KG或G
我现在要把单位中"/"字符左边的数值取出来进行计算,结果如下:
数量   单位    新字段
100    10/KG   1000    (即100x10)
200    5/G     1       (即200x5/1000)
150    20/KG   3000    (即150x20)
50     200/G   10      (即50x200/1000)
...    ...

请问这种提取字段的特定字符参加计算的SQL语句如何写??

回复列表 (共5个回复)

沙发

?找麻烦,你不会用统一单位的,这样的表设计的根本就不合理

板凳

同意1楼的观点

如果单位的数字和量纲都是用“/”隔开,则可以使用如下语句

  select (数量* split(单位,"/",1)) as newfield from 表名
你试一试

3 楼

首先谢谢二位的回贴,关注!!

这是别人设计的数据库,我只是要引用其中的数据而已.

wdkshp兄,我用你的方法,但提示说:
'split' 不是可以识别的 函数名。

请指教!!

4 楼

有谁知道吗?

5 楼

select left(单位,charindex('/',单位)-1) 新单位 from 表
以此类推

我来回复

您尚未登录,请登录后再回复。点此登录或注册