Ada kasus GOTO yang tidak dapat diimplementasikan di MySQL, seperti melompat mundur dalam kode (dan hal yang baik juga).
Tetapi untuk sesuatu seperti contoh Anda di mana Anda ingin melompat keluar dari segalanya ke serangkaian pernyataan terakhir, Anda dapat membuat blok BEGIN / END di sekitar kode untuk melompat keluar dari:
aBlock:BEGIN
if (action = 'D') then
if (rowcount > 0) then
DELETE FROM datatable WHERE id = 2;
else
SET p=CONCAT('Can not delete',@b);
LEAVE aBlock;
end if;
end if;
END aBlock;
return 0;
Karena kode Anda hanyalah beberapa IF bersarang, konstruksi tidak diperlukan dalam kode yang diberikan. Tetapi lebih masuk akal untuk LOOP/WHILE/REPEAT untuk menghindari beberapa pernyataan RETURN dari dalam loop dan untuk mengkonsolidasikan pemrosesan akhir (sedikit seperti COBA / AKHIRNYA).