Simplemente envuelvo mi secuencia de comandos SQL en un procedimiento, donde se permite el código condicional. Si prefiere no dejar las declaraciones por ahí, puede abandonar el procedimiento cuando haya terminado. He aquí un ejemplo:
delimiter //
create procedure insert_games()
begin
set @platform_id := (select id from platform where name = 'Nintendo DS');
-- Only insert rows if the platform was found
if @platform_id is not null then
insert into game(name, platform_id) values('New Super Mario Bros', @platform_id);
insert into game(name, platform_id) values('Mario Kart DS', @platform_id);
end if;
end;
//
delimiter ;
-- Execute the procedure
call insert_games();
-- Drop the procedure
drop procedure insert_games;
Si no ha utilizado procedimientos, la palabra clave "delimitador" puede necesitar alguna explicación. La primera línea cambia el delimitador a "//" para que podamos incluir punto y coma en nuestra definición de procedimiento sin que MySQL intente interpretarlos todavía. Una vez que se ha creado el procedimiento, volvemos a cambiar el delimitador a ";" para que podamos ejecutar sentencias como de costumbre.