Se ho due queryIl numero di colonne restituite influisce sulla velocità di una query?
SELECT Id, Forename, Surname
FROM Person
WHERE PersonName Like(‘%frank%’)
E
SELECT *
FROM Person
WHERE PersonName Like(‘%frank%’)
Quale interrogazione saranno più veloci? La clausola where/table unisce il fattore più grande o il numero di colonne restituite?
Sto chiedendo perché sto costruendo una serie di oggetti che si associano alle tabelle del database. In genere ogni oggetto avrà almeno questi tre metodi:
Select
- Seleziona tutto
List
- Seleziona abbastanza che è può essere usato per compilare un elenco a discesa
Search
- Consente di selezionare tutto ciò che è visibile nell'immagine risultati, in genere circa 6 colonne.
Se ogni query ha restituito esattamente lo stesso insieme di colonne, la manutenzione e il test del codice dovrebbero essere più banali. È improbabile che il database superi le 50.000 righe in una data tabella, quindi se la differenza nelle prestazioni è ridotta, prenderò il risparmio nei tempi di sviluppo. Se la performance sta per cadere nel pavimento, allora lavorerò da una diversa angolazione.
Quindi, per facilità di sviluppo, è ragionevole SELECT *
o è ingenuo?
Solo una piccola grammatica: * influenza * la velocità di una query. –
http://xkcd.com/326/ – Quassnoi
La politica estera può influire su qualcosa, ma un numero di colonne non può – Andomar