Tidak, seharusnya tidak ada perbedaan. EXISTS
keluar segera setelah menemukan satu baris yang cocok. Itu sebabnya selalu lebih disukai daripada mis. (select COUNT(*) from ...) > 0
- COUNT
akan memaksa semua baris untuk dipertimbangkan.
Jika Anda membuat empat kueri berikut:
select * from sys.objects
select top 1 * from sys.objects
select 1 where exists(select * from sys.objects)
select 1 where exists(select top 1 * from sys.objects)
Dan aktifkan rencana eksekusi, Anda akan melihat bahwa kueri kedua menghasilkan rencana eksekusi yang menyertakan TOP
operator. Kueri ke-3 dan ke-4 menghasilkan identik rencana. TOP
diabaikan.