0
的條款我有兩個表INSERT INTO基於WHERE第二臺
table1
+--------+-----+------+
| DATE | VAR| VAL|
+--------+-----+------+
|20160101|VAR_1| 0.4|
|20160101|VAR_2| 0.1|
|20160102|VAR_1| 0.6|
|20160102|VAR_2| 0.1|
|20160103|VAR_1| 0.5|
|20160103|VAR_2| 0.1|
+--------+-----+------+
table 2
+--------+-----+------+
| DATE | VAR| VAL|
+--------+-----+------+
|20160102|VAR_1| 0.6|
|20160102|VAR_2| 0.1|
|20160103|VAR_1| 0.5|
|20160103|VAR_2| 0.1|
|20160104|VAR_1| 0.3|
|20160104|VAR_2| 0.2|
|20160105|VAR_1| 0.2|
|20160105|VAR_2| 0.6|
|20160106|VAR_1| 0.3|
|20160106|VAR_2| 0.4|
+--------+-----+------+
我想要做的就是添加了表2的所有新項目將基於日期表1。我的想法是這樣的
INSERT INTO table1 SELECT * FROM table2 WHERE date > (SELECT MAX(date) from table1);
但我得到一個語法錯誤。 隨着不在工作...
INSERT INTO table1 SELECT * FROM table2 WHERE table2.date NOT IN(SELECT DISTINCT date from table1);
任何幫助,高度讚賞!
會有問題,你有第二個,但不是第一個table2.data?你有錯誤的細節嗎?編輯:刪除插入並只做選擇。看看你得到了什麼。 – johnny
它在Postgres工作。請修改您的帖子以附加第一條插入語句的錯誤消息。另外,你是否在varchar列中存儲日期?如果是這種情況,請考慮將其切換爲適當的數據類型。 –
您能否發佈您收到的錯誤。 –