SQL Server中的SELECT語句
中的SELECT表
INSERT...SELECT
> SQL Server的語句簡化了使用來自另一個表的數據添加行。 但是,您可以使用類似的方法來更新表嗎? 本指南說明瞭如何。
>假設您有一個臨時表,其中要合併到主表中的更新值。 一種常見(但不正確)的方法可能看起來像:
<code class="language-sql">UPDATE Table SET col1, col2 SELECT col1, col2 FROM other_table WHERE sql = 'cool' WHERE Table.id = other_table.id</code>
此語法是有缺陷的。 正確的方法利用加入以進行有效而準確的更新:
<code class="language-sql">UPDATE Table_A SET Table_A.col1 = Table_B.col1, Table_A.col2 = Table_B.col2 FROM Some_Table AS Table_A INNER JOIN Other_Table AS Table_B ON Table_A.id = Table_B.id WHERE Table_A.col3 = 'cool'</code>
這個精製的查詢使用JOIN
>基於匹配Some_Table
值的Table_A
>(將為Other_Table
)鏈接到Table_B
>(將為id
)和WHERE
>(將其為Table_A.col3 = 'cool'
)鏈接。 SELECT
子句將更新過濾到其中的那些行
以上是SQL Server 中可以使用 SELECT 語句更新資料表嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!