我的表中有名为“工资”的列。另一个表的值存储方式如下
- 同样是 50 万 12000..
我想要结果
- 5*10000+12*1000
我创建了一个查询,
SELECT TOP(10) 'INSERT INTO jobs(Budget) VALUES('+
CAST(SUBSTRING(
CAST(r.Budget AS VARCHAR(50)), 0, PATINDEX('%laks%', r.Budget))*100000 AS VARCHAR(50))
+ ',' +CAST(SUBSTRING(
CAST(r.Budget AS VARCHAR(50)), PATINDEX('%laks%', r.Budget) + 4
,patindex('%Thousands%', r.Budget) - PATINDEX('%laks%', r.Budget) - 4)* 1000 AS VARCHAR(50))+')'
FROM requirementsdetailsfororganization r
在这里我可以乘以单独的值。我无法添加两个值。
当我使用上面的查询时,我的结果是
INSERT INTO jobs(Budget) VALUES(200000,5000)
预期输出:
INSERT INTO jobs(Budget) VALUES(205000)
最佳答案
SELECT TOP(10) 'INSERT INTO jobs(Budget) VALUES('+
CAST(SUBSTRING(CAST(r.Budget AS VARCHAR(50)), 0, PATINDEX('%laks%', r.Budget))*100000
+ SUBSTRING(CAST(r.Budget AS VARCHAR(50)), PATINDEX('%laks%', r.Budget) + 4,
patindex('%Thousands%', r.Budget) - PATINDEX('%laks%', r.Budget) - 4)* 1000 AS VARCHAR(50))+')'
FROM requirementsdetailsfororganization r
关于sql - 在单列中添加两种类型的类型转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16058843/