Microsoft SQL Server将2列合并为1列

时间:2018-04-14 17:39:17

标签: sql-server

我有一个表employee,其中包含以下列:

  • employeeID(int)
  • emp_name(varchar50)
  • JoinDate(日期)
  • 薪水(双倍(5,2))

等。

当我试图以这样的格式获得输出时:(employeeName& Salary)。我正在尝试使用此代码:

SELECT emp_name + ' ' + salary As Emp_Salary 
FROM employees

但我总是收到错误:

  

将数据类型varchar转换为数字时出错。

1 个答案:

答案 0 :(得分:1)

emp_name是varchar,薪水是双倍的(数字类型)。您不能将不同类型具体化为一种类型。您需要将其转换为相同的类型,在这种情况下它将是varchar。如果你来自脚本语言作为javascript,其中类型是弱类型,它将是有意义的,但不是在SQL中。 你应该这样试试 -

CAST(salary  AS VARCHAR)