Можете да използвате WHERE клауза за това. Преобразувайте вашите INSERT VALUES във INSERT SELECT и добавете WHERE клауза.
Например,
INSERT INTO fields (field_name, control_type_id, needs_approval)
SELECT
'Array Photos', 3, 0
WHERE Condition;
Ако условието е вярно, то ще вмъкне реда. Ако условието е невярно, SELECT ще върне нула редове и по този начин INSERT ще вмъкне нула редове.
Ако заявката по-горе не се изпълнява поради синтактична грешка, можете, както спомена @spencer7593, да добавите FROM DUAL .
INSERT INTO fields (field_name, control_type_id, needs_approval)
SELECT
'Array Photos', 3, 0
FROM DUAL
WHERE Condition;
DUAL таблицата е по същество фиктивна таблица, която има предвидимо съдържание и може да се разчита, че винаги има поне един ред .