sql >> Databasteknik >  >> RDS >> Sqlserver

Gräns ​​för tillståndet WHERE col IN (...).

Beroende på vilken databasmotor du använder kan det finnas gränser för längden på en instruktion.

SQL Server har en mycket stor gräns:

http://msdn.microsoft.com/en-us/library/ms143432.aspx

ORACLE har en mycket lätt att nå gräns på andra sidan.

Så för stora IN-satser är det bättre att skapa en temptabell, infoga värdena och göra en JOIN. Det fungerar snabbare också.



  1. PostgreSQL felaktig sortering

  2. SQL Server Konvertera Varchar till Datetime

  3. Hur beräknar man retentionsgrad i SQL?

  4. MySQL kopieringsdatabas