GO seperti akhir dari sebuah skrip.
Anda dapat memiliki beberapa pernyataan CREATE TABLE, dipisahkan oleh GO. Ini adalah cara mengisolasi satu bagian skrip dari yang lain, tetapi mengirimkan semuanya dalam satu blok.
BEGIN dan END sama seperti { dan } di C/++/#, Java, dll.
Mereka mengikat blok kode logis. Saya cenderung menggunakan BEGIN dan END di awal dan akhir prosedur tersimpan, tetapi itu tidak sepenuhnya diperlukan di sana. Di mana IS diperlukan untuk loop, dan pernyataan IF, dll, di mana Anda membutuhkan lebih dari satu langkah...
IF EXISTS (SELECT * FROM my_table WHERE id = @id)
BEGIN
INSERT INTO Log SELECT @id, 'deleted'
DELETE my_table WHERE id = @id
END