为批量插入的每一行中的字段使用唯一值,而在方案中没有限制

时间:2018-11-28 20:46:14

标签: mysql sql

我正在尝试复制所有行并更改其中的server { # Running port listen 80; server_name localhost; # Form submission size client_max_body_size 100m; location / { proxy_pass http://127.0.0.1:8080; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $server_name; proxy_connect_timeout 300; proxy_send_timeout 300; proxy_read_timeout 300; send_timeout 300; } } 字段。但是,每行也都有一个ID,需要是唯一的。 但是该架构并未对该列强制执行store_id

我想到的解决方案是创建一个子查询,该子查询将获取id列的max()并向其添加1。

AUTO INCREMENT

但是子查询仅执行一次-不会为每一行执行一次。因此所有复制的行都将具有相同的ID。

如何复制所有行,将INSERT INTO oc_seo_url (store_id, language_id, `query`, keyword, seo_url_id) SELECT "1", language_id, `query`, keyword, (SELECT max(seo_url_id)+1 FROM oc_seo_url) -- this line FROM oc_seo_url; 更改为1,将store_id更改为唯一的内容?

0 个答案:

没有答案