首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在单个查询中插入多行的重复键更新时的MySQL

在单个查询中插入多行的重复键更新时的MySQL
EN

Stack Overflow用户
提问于 2010-04-26 23:16:06
回答 3查看 132.5K关注 0票数 230

我有一个SQL查询,我想在单个查询中插入多行。所以我使用了类似这样的东西:

代码语言:javascript
复制
$sql = "INSERT INTO beautiful (name, age)
  VALUES
  ('Helen', 24),
  ('Katrina', 21),
  ('Samia', 22),
  ('Hui Ling', 25),
  ('Yumie', 29)";

mysql_query( $sql, $conn );

问题是,当我执行这个查询时,我想检查是否应该检查UNIQUE键(不是上面的PRIMARY KEY),例如上面的'name',如果这样的'name'已经存在,则应该更新相应的整行,否则插入。

例如,在下面的示例中,如果数据库中已经存在'Katrina',则应更新整行,而不考虑字段的数量。同样,如果'Samia'不存在,则应该插入行。

我想使用:

代码语言:javascript
复制
INSERT INTO beautiful (name, age)
      VALUES
      ('Helen', 24),
      ('Katrina', 21),
      ('Samia', 22),
      ('Hui Ling', 25),
      ('Yumie', 29) ON DUPLICATE KEY UPDATE

这就是陷阱。我被卡住了,不知道该怎么做。我一次有多个行要插入/更新。请给我指个方向。谢谢。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2714587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档