我有一個主表(T1)加入新表與舊,更新不匹配的IDS
id value group
------------------------------
5 22 1
6 55 1
7 18 2
8 11 2
和高速緩存表(T2)
id value group
------------------------------
1 12 1
2 30 1
3 18 2
4 11 2
主要表自動遞增,因此每次保存數據時,表格將被清除並創建新的ID,每次都會上傳。
我需要用t1.id更新t2.id,以便它們匹配。
用於高速緩存表(T2)所需的結果:
id value group
------------------------------
5 12 1
6 30 1
7 18 2
8 11 2
Attempt1:
UPDATE t1, t2 SET t1.id=t2.id WHERE t1.id < t2.id ORDER BY id ASC
ATTEMPT2:
UPDATE t1, t2 SET t1.id = t2.id WHERE t1.id IS < MIN(t2.id) ORDER BY t1.id ASC
Attempt3:
UPDATE t1
INNER JOIN (
SELECT
MIN(t1.id) AS ID
FROM t1
GROUP BY ID) m ON t1.ID = m.ID
INNER JOIN t2 ON t1.ID = t2.ID
是否意味着(*表被清除並且新的ID被創建*)ID也被重置回1 ?.如果** NO **,'cache'表可能如何與'main'表連接? –
如果它是一個* cache *表,爲什麼不將主表的ID寫入它? –
該要求不會達到一個好結果IMO – codingbiz