我想将下面的MS SQL脚本转换为等效的MySQL脚本(不存储proc或函数)。
IF NOT EXISTS (SELECT * FROM Table1 WHERE name = 'abc')
BEGIN
--Call some SP or functions, not just INSERT
END;
答案 0 :(得分:0)
一种选择是仅使用where子句进行插入:
INSERT INTO TABLE2 (...)
SELECT ...
WHERE NOT EXISTS (SELECT 1 FROM Table1 WHERE name = 'abc');
如果EXISTS
子句失败,则不会插入任何记录。为了使它起作用,您将必须用INSERT INTO ... SELECT
来表示插入内容。但是,即使您只是打算使用VALUES
子句插入文字值,也可以将其改写为select。