网站已经内置在.Net中,它使用SQL Server存储过程。现在我们正在转换为PHP,因为我们也在改变MySQL中的存储过程。
在一个存储过程中,有一些代码可以在SQL存储过程中实现多次插入和更新,如下所示:
MERGE
INTO products T
USING SELECT STATEMENT
WHEN MATCHED
THEN UPDATE STATEMENT
WHEN NOT MATCHED
THEN INSERT STATEMENT
我需要在MySQL存储过程语法中替代这种方法。请指导我如何实现这一目标。
答案 0 :(得分:1)
您应该可以将其替换为on duplicate key update
。
为此,您需要在指定“匹配”的列上使用唯一键。
注意:这绝对不会替换所有merge
代码。但是,您的示例似乎正在实现此逻辑。否则,您可以if
使用update
和insert
语句来完成同样的事情。