2

我想更新通过 SELECT 语句返回的表的结果。

所以我想:

UPDATE (SELECT [a bunch of joins etc.]) SET thisRecord = 1 WHERE [blah blah]

这对我来说似乎根本不起作用。

任何帮助将不胜感激。

4

3 回答 3

2

尝试:

UPDATE Table1
SET column1 = t2.Column
FROM  table1 t1
JOIN (SELECT ... FROM ... lots of joins etc) t2
ON t1.id = t2.otherid
于 2013-01-29T14:45:29.743 回答
2

做就是了:

UPDATE your table name SET thisRecord = 1 WHERE your_criteria = (SELECT [a bunch of joins etc.])

如果我很好地理解了你的问题,这就是你想要做的。

干杯

于 2013-01-29T14:46:43.420 回答
1

文档说明了一切。你不能按照你的想法去做。但是,您可以做的是翻译您的内在选择

SELECT [a bunch of joins etc.]

应用于要更新的​​表的条件。

于 2013-01-29T14:45:14.633 回答