0

挿入と選択を使用して重複キーを更新しようとしています。

INSERT INTO f_s.s_d_p(dom,title,lastupdated)
SELECT dom AS dDom,
COUNT(db2.rets.dom) AS dcount,
NOW() AS timeNow
FROM db2.rets
GROUP BY db2.rets.dom
LIMIT 5
ON DUPLICATE KEY UPDATE title = dDom, last_updated = NOW();

しかし、クエリを実行すると、常に「不明な列dDom」が表示されます

選択クエリのエイリアスを設定しようとしましたが、うまくいきませんでした。

4

1 に答える 1

2

エイリアスではなく、フィールド名を使用してください:ON DUPLICATE KEY UPDATE title = db2.rets.dom, last_updated = NOW();。またはします

INSERT INTO f_s.s_d_p(dom,title,lastupdated)
SELECT * FROM (
SELECT dom AS dDom,
COUNT(db2.rets.dom) AS dcount,
NOW() AS timeNow
FROM db2.rets
GROUP BY db2.rets.dom
LIMIT 5)
a
ON DUPLICATE KEY UPDATE title = a.dDom, last_updated = NOW();
于 2012-12-12T16:40:14.737 に答える