2012-03-09 111 views
0

我試圖根據狀態分配區域。在RepAssign表中,每個狀態只有一條記錄。子查詢返回更新值超過1

update MasterList 
set T = (select Territory from RepAssign ) 
from MasterList M 
join RepAssign R on M.ST = R.State 

我得到錯誤:子查詢返回的值超過1。

+0

T是浮動和UR輸入val爲nvarchar的......它轉換成浮動... – Teja 2012-03-09 19:46:26

+0

爲什麼你不能'設置T = R.Territory'?你使用的是什麼RDBMS? – Sorpigal 2012-03-09 19:50:33

+1

@Venk:???????? – egrunin 2012-03-09 20:08:39

回答

1

你不是這個意思:

update MasterList 
set T = R.Territory 
from MasterList M 
join RepAssign R on M.ST = R.State 

1

這是否適合您?

update MasterList 
set T = (select Territory from RepAssign where state = MasterList.st) 
0
update MasterList M, RepAssign R set T = R.Territory where M.ST = R.State; 
相關問題