Windows
根據另一個表中的參考值更新表
我有兩個結構如下的表:
Table1 (reference table) | Name UNIQUE | Value(Double) | Table2 (data table) | Name1 | Name2 | Number(Int) |
我想在 Table2 的每一行中的數字上加 10,其中 Name1 的值(來自 Table1)大於 Name2 的值(來自 Table1)。如何在 Sqlite3 中做到這一點?
您需要使用
UPDATE
語句來執行此操作。不幸的是,SQLite 不支持JOIN
在語句中使用子句,UPDATE
因此您必須像這樣模擬子句JOIN
內的WHERE
子句:UPDATE Table2 SET Number = Number + 10 WHERE (SELECT Value FROM Table1 WHERE Name = Table2.Name1) > (SELECT Value FROM Table1 WHERE Name = Table2.Name2);
類似的問題也可能對您有所幫助: