t-sql - MSSQL : Append String from Select

标签 t-sql sql-server-2012

我想根据另一个表中的选择向 nvarchar 字段添加文本。

当我尝试此操作时,出现以下错误: 无法绑定(bind)多部分标识符“employees.desc”

UPDATE
    employees
SET
    employees.desc = employees.desc + ', ' + c.title
FROM
    employees AS e
    INNER JOIN company AS c
        ON e.dept=c.orgcode
WHERE e.dept IS NOT NULL

如果我只是设置一个新标题而不使用

附加到现有标题
employees.desc = c.title

工作正常。我在这里做错了什么?

最佳答案

您需要使用 FROM/JOIN 中的别名

UPDATE
    employees
SET
    employees.desc = e.desc + ', ' + c.title
FROM
    employees AS e
    INNER JOIN company AS c
    ON e.dept=c.orgcode
WHERE e.deptIS NOT NULL

关于t-sql - MSSQL : Append String from Select,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45859883/

相关文章:

sql - 在所有节点中搜索 xml 列

mysql - 如何引用外键表来引用另一个表?

sql - 计算 PERCENT_RANK() 、CUME_DIST() 、PERCENTILE_CONT() 和 PERCENTILE_DISC() 的数学方法是什么

sql - 如何验证 DateTime 是否包含 SQL Server 中的时间

sql - 按日期和类型选择 COUNT SQL Server 2012

sql-server - 字符长度的 900 字节索引大小限制

SQL Server : use function to calculate a new column

sql - 从 SQL 将消息添加到 Azure 服务总线队列

sql - 将 .bacpac 从一个 Azure SQL Server 还原到另一个 Azure SQL Server 后,包含的用户密码和登录用户密码不起作用

用于随机分配调查的 SQL Server 存储过程