СУЩЕСТВУЕТ, всегда
- COUNT будет проходить по таблице или индексу: вы запросили COUNT
- EXISTS остановится, как только найдет строку
Изменить, чтобы было ясно
Конечно, в этом случае, если столбец электронной почты уникален и проиндексирован, он будет закрыт.
Как правило, EXISTS будет использовать меньше ресурсов и является более корректным. Вы ищете существование ряда, а не «больше нуля», даже если они одинаковы
Edit2: в EXISTS вы можете использовать NULL, 1, ID или даже 1/0: это не проверено ...
21 мая 2011 г. редактировать:
Похоже, что это было оптимизировано в SQL Server 2005+, поэтому COUNT теперь совпадает с EXISTS в этом случае