Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在同一查询中插入、选择和更新dup_Mysql - Fatal编程技术网

Mysql 在同一查询中插入、选择和更新dup

Mysql 在同一查询中插入、选择和更新dup,mysql,Mysql,我正在尝试使用insert和select更新重复密钥 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(); 但当我运行

我正在尝试使用insert和select更新重复密钥

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”


我尝试为select查询设置别名,但没有成功。

使用字段名,而不是别名:
在重复键更新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();

如果我想用计数更新怎么办?我可以做密钥更新title=a.dcount吗?