Sta*_*tan 1 sql select sql-server-2005
我必须通过查询联系人表格为分配表添加联系人姓名.
Contact 表:
ID First_name Last_Name
-----------------------------------
1234 John Jones
9876 Mary Smith
Run Code Online (Sandbox Code Playgroud)
Assignment 表
ContactID Name
-----------------
1234
9876
Run Code Online (Sandbox Code Playgroud)
我得到了这个查询
子查询返回的值超过1.
查询:
update A
set Name = (select distinct first_name + ' ' + last_name from contacts c join Assignments A on c.id = A.contact_id where A.contact_id = c.id)
from Assignments A
join contacts c on c.id = A.contact_id
where c.id = A.contact_id
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
JOIN 他们直接,像这样:
UPDATE a
SET a.Name = c.first_name + ' ' + c.last_name
FROM Assignments a
INNER JOIN Contacts c ON c.id = A.contact_id
Run Code Online (Sandbox Code Playgroud)