Utilizzando una versione Microsoft di SQL, ecco la mia semplice domanda. Se interrogo un record che non esiste, non verrà restituito nulla. Preferirei che false (0) fosse restituito in quello scenario. Alla ricerca del metodo più semplice per tenere conto di nessun record.
SELECT CASE
WHEN S.Id IS NOT NULL AND S.Status = 1 AND (S.WebUserId = @WebUserId OR S.AllowUploads = 1) THEN 1
ELSE 0
END AS [Value]
FROM Sites S
WHERE S.Id = @SiteId