sql - 在单列中添加两种类型的类型转换

标签 sql sql-server sql-server-2008 casting

我的表中有名为“工资”的列。另一个表的值存储方式如下

  • 同样是 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/

相关文章:

SQL - 如何对 GROUP BY 记录集求和?

sql-server-2008 - 在特定日期渲染垂直线 折线图

sql-server-2008 - 外键从位到整数

sql - 在 JOIN 中使用 CONCAT 的方法

java - 如果一张表受影响,客户端如何发送请求

MySQL "in"命令

sql - 使用 nodes() 方法在 SQL 中展平分层 XML

Java Joda - 尝试循环日期、月份和年份时无限迭代

mysql - VB - 连接到本地 SQL 服务器并将数据从 Excel 加载到表中

c# - 在 MVC4 中,如何将属于我的域模型的文件(图像)上传到 SQL Server?