Puede escribir una consulta de la siguiente manera:
IF OBJECT_ID('ProcedureName','P') IS NOT NULL
DROP PROC ProcedureName
GO
CREATE PROCEDURE [dbo].[ProcedureName]
...your query here....
Para ser más específico sobre la sintaxis anterior:
OBJECT_ID es un número de identificación único para un objeto dentro de la base de datos, SQL Server lo utiliza internamente. Dado que estamos pasando ProcedureName seguido de su tipo de objeto P, que le dice al SQL Server que debe encontrar el objeto llamado ProcedureName, que es de tipo procedimiento, es decir, P
Esta consulta encontrará el procedimiento y, si está disponible, lo descartará y creará uno nuevo.
Para obtener información detallada sobre OBJECT_ID y los tipos de objetos, visite: SYS.Objects