sql >> Database teknologi >  >> RDS >> Sqlserver

Tabel variabel dårlig ydeevne ved indsættelse i SQL Server Stored Procedure

Brug et midlertidigt bord. Du vil se meget bedre ydeevne.

En detaljeret forklaring på ræsonnementet bag dette ligger uden for rammerne af det indledende spørgsmål, men for at opsummere:

  • En tabelvariabel er optimeret til én række, af SQL Server, dvs. den antager, at 1 række vil blive returneret.
  • En tabelvariabel skaber ikke statistik.

Google temptabel vs. tabelvariabel for et væld af ressourcer og diskussioner. Hvis du så har brug for specifik hjælp, så send mig en e-mail eller kontakt mig på Twitter.



  1. Oracle SQL-forespørgsel for at udelukke rækker, der indeholder ikke-numeriske tegn

  2. Hvor dyre er JOINs i SQL? Og/eller hvad er afvejningen mellem ydeevne og normalisering?

  3. Sådan vælger du en enkelt række baseret på den maksimale værdi i flere rækker

  4. Kolonnenavnet eller antallet af angivne værdier matcher ikke tabeldefinitionen