sql update語句包含自連接時使用別名出錯的處理方法
作者:助燃
下文就sql update語句包含自連接時使用別名出錯問題的處理進行了詳細(xì)的敘述,希望對您學(xué)習(xí)sql update語句方面能有所幫助。
使用sql update語句,如果包含自連接時使用別名,運行會報錯?不要緊,下面就將教您如何處理這種問題的方法,供您參考。
最近寫了個sql update語句,條件用到了自連接,于是將代碼順理成章地寫成了這樣:
- update ValidNodes
- set ItemValid=0
- from ValidNodes as v1
- inner join ValidNodes as v2 on v1.Parent=v2.ItemID
- where v2.ItemValid=0 and v1.ItemValid=1
結(jié)果編譯通過,運行時報錯,提示第一行update語句后面的表 'ValidNodes' 不明確。
莫非sql update語句不支持別名?結(jié)果改成一般的連接,運行成功,之后嘗試修改代碼,變成:
- update ValidNodes
- set ItemValid=0
- from ValidNodes
- join ValidNodes as v2 on ValidNodes.Parent=v2.ItemID
- where v2.ItemValid=0 and ValidNodes.ItemValid=1
執(zhí)行通過了。
【編輯推薦】
責(zé)任編輯:段燃
來源:
博客園