MySQL插入,但在重复时返回它';身份证

MySQL插入,但在重复时返回它';身份证,mysql,Mysql,首先,我很困惑,我自己找不到这个简单问题的答案 我正在努力实现以下目标 只要不存在唯一索引(基于两个字段),我就要在事务中插入。例如,我希望名字和姓氏在一起是唯一的。 但我希望名字能被多次使用,姓氏也能被多次使用,但不能成对使用 到目前为止,这对我来说是可行的,但是当我添加一个重复的值时,我不希望任何东西被更新。我只想检索此字段的id,以便在事务的下一部分中使用 在我的例子中,我在NodeJS环境中使用它,但这不重要 因此,我希望获得一个示例查询“如果不存在,则插入”,但如果确实存在,我希望获得

首先,我很困惑,我自己找不到这个简单问题的答案

我正在努力实现以下目标

只要不存在唯一索引(基于两个字段),我就要在事务中插入。例如,我希望名字和姓氏在一起是唯一的。 但我希望名字能被多次使用,姓氏也能被多次使用,但不能成对使用

到目前为止,这对我来说是可行的,但是当我添加一个重复的值时,我不希望任何东西被更新。我只想检索此字段的id,以便在事务的下一部分中使用

在我的例子中,我在NodeJS环境中使用它,但这不重要

因此,我希望获得一个示例查询“如果不存在,则插入”,但如果确实存在,我希望获得“id”,以便在下一个事务中使用它


提前感谢

您不会找到一个查询来完成所有这些。我将发布一个简单的insert语句。如果它返回到应用程序逻辑时出现重复键错误,则可以通过后续选择查询“违规”记录的id

显然,您可以将逻辑封装到一个存储过程中,该存储过程遵循上述步骤,并作为单个查询显示给调用应用程序