Если вы хотите INSERT
только одну строку, вы можете попробовать следующим образом:
INSERT INTO users_to_groups(user_id, group_id)
SELECT 1,'A'
FROM dual
WHERE NOT EXISTS
(SELECT * FROM users_to_users
WHERE user_id_a=2 AND user_id_b=1 AND
user_blocked=1);
Если вы хотите INSERT
реальный результат запроса, вы можете изменить оператор SELECT
с помощью вашей логики
Например:
INSERT INTO users_to_groups(user_id, group_id)
SELECT u.id,'A'
FROM users u
WHERE NOT EXISTS
(SELECT * FROM users_to_users
WHERE user_id_a=u.id AND user_id_b=1 AND
user_blocked=1);
Но вы не можете использовать INSERT INTO ... VALUES
с условием WHERE
, потому что у вас есть синтаксическая ошибка