Sto imparando maggiori dettagli nella tabella variabile. Dice che le tabelle temporanee sono sempre su disco e che le variabili della tabella sono in memoria, vale a dire che le prestazioni della variabile tabella sono migliori della tabella temporanea poiché la variabile tabella utilizza meno operazioni di I / O della tabella temporanea.
Ma a volte, se ci sono troppi record in una variabile di tabella che non possono essere contenuti in memoria, la variabile di tabella verrà inserita sul disco come la tabella temporanea.
Ma non so cosa siano i "troppi dischi". 100.000 record? o 1000.000 record? Come posso sapere se una variabile di tabella che sto usando è in memoria o è su disco? Esiste una funzione o uno strumento in SQL Server 2005 per misurare la scala della variabile della tabella o per farmi sapere quando la variabile della tabella viene messa sul disco dalla memoria?
tempdb
(ma potrebbe anche essere interamente in memoria)
tempDB
: "in memoria" è un mito. Inoltre: le variabili di tabella verranno sempre considerate dall'utilità di ottimizzazione delle query per contenere esattamente una riga: se ne hai molte di più, questo può portare a piani di esecuzione seriamente sbagliati.