在回答一個測試,我遇到以下問題,這點我是不能夠解決:SQL更新查詢利用
如下表Z和查詢:
Table Z:
| Value |
---------
| 1 |
| 2 |
| 3 |
| 4 |
---------
查詢:
UPDATE Z
SET VALUE = Y.VALUE + 1
FROM Z AS Y
WHERE Y.VALUE = Z.VALUE + 1;
SELECT SUM(VALUE) FROM Z;
該問題詢問此查詢執行的結果。這個問題沒有提到特定的SQL語言。
正確答案是16。
我不知道這個查詢如何實現這一結果。我甚至無法在真實環境中執行此查詢,它抱怨「FROM」附近有一些語法錯誤。
1 - 你們知道這個查詢是如何工作的嗎? 2 - 我如何繼續執行此查詢?
P.S.我很難嘗試在UPDATE查詢中找到關於FROM子句的一些信息。
查詢,按原樣,將無法正常工作,甚至在Postgres的,因爲分號的上'SET'語句 – user2877959
抱歉,SET語句中的分號是錯字,已經修復,問題依然存在 –
我看到了。實際上,系統只是在1,2,3上加2,然後對集合進行求和(3,4,5,4)。這裏棘手的部分是where子句是自連接使用Y值,然後加上一個 – xQbert