【发布时间】:2021-10-30 02:40:08
【问题描述】:
您好,我问了一个关于how to transfer the sql code from Postgresql to Mysql. 的问题 多亏了善意的帮助,我现在可以创建表格了。现在我有以下查询问题,需要再次从 Postgresql 转移到 Mysql。
创建表格
CREATE TABLE public.`user` (
id varchar(10) NOT NULL,
chat_id varchar(10) NULL,
state INT NOT NULL,
create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id)
);
我想转移到 mysql 的查询: 插入一行数据后,检查id是否有冲突。如果发生冲突,我们会更新 chat_id 和 state
sql = '''INSERT INTO public.`user`
(id, chat_id, state)
VALUES(%s, %s, 1)
ON CONFLICT(id) DO UPDATE
SET chat_id = EXCLUDED.chat_id, state = EXCLUDED.state;
'''
【问题讨论】:
-
您总是可以花几分钟时间查看 MySQL 手册。所以在谷歌中快速搜索
ON DUPLICATE UPDATE
标签: mysql sql postgresql