使用我目前運行此查詢:SQL更換過程中比較
UPDATE table1
SET column1 = table2.columnA
FROM table2
WHERE column2 = table2.columnA
AND column3 = table2.columnC
是有重複的列,對不起。
當我穿過參考column2
與table2.columnA
有機會獲得NULL
因爲column2
DOES NOT包含/
,其中作爲table2.columnA
可以包含/
我不想改變table2.columnA
這是我的理解,我可以運行此查詢REPLACE
的字符。
SELECT REPLACE ([table2.columnA],'/','-')
FROM table2
這是必要的,這不會對table2
永久的變化,所以我想確保我得到這個權利或看看有沒有更好的辦法。
現在我想結合這兩個查詢,但不確定如何。
UPDATE table1
SET column1 = table2.columnA
FROM table2
WHERE column2 = (SELECT REPLACE([table2.columnA],'/','-')table2.columnA)
FROM table2
AND column3 = table2.columnC
感謝您的幫助!
一般憑經驗:SQL語句永遠只能改變一(1)表。因此,'UPDATE TableX ...'只能改變TableX,無論在聲明中是什麼。同樣,'DELETE TableY ...'只能刪除TableY中的行,'INSERT TableZ ...'只能將行添加到TableZ中。而'SELECT'語句可以***從不改變表的內容,它只能返回數據。 – RBarryYoung
好的,感謝您的信息! – weewa