Обновить таблицу из другой таблицы - PullRequest
0 голосов
/ 01 февраля 2011

Каждый проект, в котором у меня есть некоторые роли, и менеджер - одна из них. Мне нужно выбрать проекты с их именем менеджера. Я создал Temp Table, заполнил детали проекта. Теперь я пытаюсь обновить имя менеджера. Я пытался, но не повезло

Update #ProjectTemp 
SET ManagerName= pu.FirstName +' '+pu.LastName
FROM Project_Role pr
Inner join PMuser pu on pr.Userid = pu.Userid
where pr.ProjectId in (Select Projectid from #ProjectTemp)and roleid = 11 and #ProjectTemp.projectid = pr.projectid

Ответы [ 2 ]

2 голосов
/ 02 февраля 2011

Ваш сценарий кажется правильным, только одно условие в предложении WHERE, вероятно, избыточно:

pr.ProjectId in (Select Projectid from #ProjectTemp)

Но, как я понимаю, это не должно повлиять на результат.нет псевдонима таблицы до roleid.Какая таблица или таблицы имеют этот столбец?Если их несколько, ваш сценарий не запустится, пока вы не укажете правильный псевдоним.

Пожалуйста, добавьте больше деталей и уточните, что вы не сделали.

0 голосов
/ 03 февраля 2011

Таблица, которую вы ОБНОВЛЯЕТЕ, должна быть ВЫБРАНА из:

UPDATE #ProjectTemp 
SET ManagerName= pu.FirstName +' '+pu.LastName
FROM #ProjectTemp 
INNER JOIN Project_Role pr ON pr.ProjectId = #ProjectTemp.ProjectId
INNER JOIN PMuser pu ON pr.Userid = pu.Userid
WHERE roleid = 11 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...