私はこれについて多くの研究を行い、次のことを思いつきました。
INSERT INTO actives
SELECT email, active_date
FROM actives_ac
ON DUPLICATE KEY UPDATE active_date = IF (
active_date < VALUES(active_date), VALUES(active_date), active_date
);
その結果、SQL Error (1136): Column count doesn't match value count at row 1
.
email
フィールドVARCHAR(255)
は両方でKEY
ありUNIQUE
、両方のテーブルにあります。
フィールドですactive_date
。DATE
アクティブ テーブルに新しいレコードがある場合はレコードを挿入しようとしてactives_ac.active_date
いactives.active_date
ます。