Supponiamo ho una tabella con il campo di tipo VARCHAR. E ho bisogno di ottenere i dati da quella tabella ordinati alfabeticamente da quel campo.Pro e contro di ordinare i dati nel DB?
Qual è il modo migliore (per prestazioni): aggiungere order by field
alla query SQL o ordinare i dati quando sono già stati recuperati?
sto usando Java (con Hibernate), ma non posso dire nulla su motore DB. Potrebbe essere qualsiasi database relazionale popolare (come MySQL o MS Sql Server o Oracle o HSQL DB o qualsiasi altro).
La quantità di record nella tabella può variare notevolmente, ma supponiamo ci sono 5k record.
UPD: quanto bene fa 2 ° livello hibernate cache (EHCache per esempio) il supporto di dati allineati?
grazie per questo punto. Sfortunatamente non è indicizzato, ma lo ricorderò per gli altri casi. – Roman
Anche in questo caso, fare questo in un DB decente è più efficiente rispetto a farlo in Java. Questo è un fatto. Il DB è progettato esattamente per questi scopi di organizzazione e di raggruppamento dei dati. Approfitta dei suoi poteri. – BalusC