Domanda

Sto scrivendo una procedura e mi ritrovo a usare lo stesso select dichiarazione con lo stesso where clausola molto. Attualmente la tabella contiene oltre 55000 righe e cresce circa 100 righe ogni giorno. Il due where Le clausole riducono i dati a poche centinaia di file in totale.

Eseguo esattamente la stessa istruzione selezionata su una dozzina di volte e i risultati dei dati saranno sempre gli stessi, nella stessa corsa. Sarebbe meglio, per quanto riguarda le prestazioni, continuare a eseguire la stessa istruzione selezionata o dovrei fare un insert into select Per riempire una tabella temporanea con solo i dati di cui ho bisogno e trarre invece da lì?

Seleziona l'istruzione RAN (con alcuni ID redatti):

SELECT WorkDay1, WorkDay1Brea, StartBreak, StrtTm
FROM dbo.DriverTimes
WHERE DriverTime.DrvrID = @DriverID
AND CONVERT(VARCHAR(12), dtwrkd, 112) = CONVERT(VARCHAR(12), @StartDate, 112)
AND PryllID IN (
 ListOfIDs
);

Questa selezione è eseguita per un totale di 8 volte per ciascun conducente e ci sono 40 alcuni driver dispari.

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange
scroll top