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

Batasan klausa IN di Sql Server

Ya, ada batasnya, tetapi MSDN hanya menetapkan bahwa itu terletak "dalam ribuan":

Menyertakan nilai dalam jumlah yang sangat besar (ribuan) dalam klausa IN dapat menghabiskan sumber daya dan mengembalikan kesalahan 8623 atau 8632. Untuk mengatasi masalah ini, simpan item dalam daftar IN dalam sebuah tabel.

Melihat kesalahan tersebut secara detail, kami melihat bahwa batas ini tidak khusus untuk IN tetapi berlaku untuk kompleksitas kueri secara umum:

Kesalahan 8623:

Pemroses kueri kehabisan sumber daya internal dan tidak dapat menghasilkan rencana kueri. Ini adalah peristiwa yang jarang terjadi dan hanya diharapkan untuk kueri atau kueri yang sangat kompleks yang mereferensikan tabel atau partisi dalam jumlah yang sangat besar. Tolong sederhanakan kuerinya. Jika Anda yakin telah menerima pesan ini karena kesalahan, hubungi Layanan Dukungan Pelanggan untuk informasi lebih lanjut.

Kesalahan 8632:

Kesalahan internal:Batas layanan ekspresi telah tercapai. Harap cari ekspresi yang berpotensi rumit dalam kueri Anda, dan coba sederhanakan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Mengaktifkan Semua CEK &Batasan Kunci Asing dalam Database di SQL Server (Contoh T-SQL)

  2. Bagaimana cara mendapatkan skrip data SQL Server?

  3. Tambahkan Login Server Tertaut di SQL Server (Contoh T-SQL)

  4. 3 Cara menggunakan SEMUA di SQL Server

  5. Bagaimana menghubungkan ke database dari Unity