基本上我有一個與下表具有相似格式的表。SQL UPDATE語句根據另一個現有行更新列
我想要做的就是更新COL4基於這個邏輯
- 如果col2的爲null,則與COL3更新COL4
- 如果col2的是不爲空,然後找到Col1中該值相匹配的值在Col2中。在COL3
與相應的值更新COL4例如,給定此表:
| Col1 | Col2 | Col3 | Col4 |
-----------------------------
| 1 | 2 | A1 | 2 |
-----------------------------
| 2 | 3 | A2 | 3 |
-----------------------------
| 3 |{null}| A3 |{null}|
更新它是該表
| Col1 | Col2 | Col3 | Col4 |
-----------------------------
| 1 | 2 | A1 | A2 |
-----------------------------
| 2 | 3 | A2 | A3 |
-----------------------------
| 3 |{null}| A3 | A3 |
任何方向將不勝感激!
哪個DB?你試過什麼了?你看過CASE聲明嗎? – Simon 2012-01-30 14:39:39
我使用MySQL 5.1。我已經嘗試了類似於SQL Server中更新集的邏輯,但無濟於事。我將最終實現一個Case語句,但是我所遇到的問題是在邏輯不爲空時執行邏輯 – mattchong 2012-01-30 14:46:40
您能發佈您已經嘗試過的代碼以及它給出的錯誤嗎? – FrustratedWithFormsDesigner 2012-01-30 15:03:27