Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

SQL Bergabung Vs SQL Subqueries (Kinerja)?

Saya akan MENGHARAPKAN kueri pertama menjadi lebih cepat, terutama karena Anda memiliki kesetaraan dan GABUNG yang eksplisit. Menurut pengalaman saya IN adalah operator yang sangat lambat, karena SQL biasanya mengevaluasinya sebagai rangkaian WHERE klausa yang dipisahkan oleh "ATAU" (WHERE x=Y OR x=Z OR... ).

Seperti halnya SEMUA HAL SQL, jarak tempuh Anda mungkin berbeda. Kecepatan akan sangat bergantung pada indeks (apakah Anda memiliki indeks di kedua kolom ID? Itu akan sangat membantu...) antara lain.

Satu-satunya cara NYATA untuk mengetahui dengan kepastian 100% yang lebih cepat adalah dengan mengaktifkan pelacakan kinerja (Statistik IO sangat berguna) dan menjalankan keduanya. Pastikan untuk mengosongkan cache di antara proses!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa tipe data SQL terbaik untuk menyimpan string JSON?

  2. Perintah Tidur di T-SQL?

  3. SQL Server 2005 Bagaimana Membuat Batasan Unik?

  4. Membuat grup hari berturut-turut yang memenuhi kriteria tertentu

  5. SQL Server:Fungsi Bernilai Tabel vs. Prosedur Tersimpan