数据库为 PostgresSQL,
表结构样例:
create table public.test (
id serial primary key,
key text unique not null,
value int
);
其中字段 key
具有唯一性约束
现在,需要插入大量数据,例如:
insert into public.test (key, value) values
('k1', 101),
('k2_dup', 102),
('k2_dup', 103);
数据中 key
字段存在大量重复,如何在插入时按一定规则自动重命名,就是说,如果要插入某值,但是数据库中该字段该值已经存在,则自动末尾添加 _2
,如果仍然重复,则改为 _3
,以此类推。
最好能批量处理这些插入数据,就说说,最好别每一条数据就一个 insert 语句。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.