有没有办法将插入、更新和选择查询组合在一起?
有点像一个条件,如果选择查询,当条件为真时,它将去更新,如果不是,它将去插入。
我怎样才能做到这一点?
存储过程是 ANSWER 和 IF/ELSE
不,这是不可能的,在单个 SQL 语句的上下文中。
可以将 INSERT 和 UPDATE 操作组合到单个语句中。该INSERT ... ON DUPLICATE KEY UPDATE
语句将基本上尝试插入一行,如果该插入导致“重复键”异常,则将执行 UPDATE 操作。
但就使用 SELECT 语句测试一些一般条件,然后根据查询结果运行 INSERT 或 UPDATE 而言,答案是否定的,MySQL 没有任何单一语句语法来支持它。