Est-ce que cela signifie ASC est préférable pour les requêtes telles queSi je crée un index Postgres, quelle est la différence entre ASC et DESC?
PRIX> 40
et est mieux pour DESC requêtes telles que
PRIX < 40?
Est-ce que cela signifie ASC est préférable pour les requêtes telles queSi je crée un index Postgres, quelle est la différence entre ASC et DESC?
PRIX> 40
et est mieux pour DESC requêtes telles que
PRIX < 40?
L'état où pourrait ne pas être affectée, mais la clause ORDER BY est certainement affectée
PostgreSQL (ou tout autre moteur de base de données, d'ailleurs) lira votre index d'une manière ou d'une autre. Vous obtiendrez une analyse d'index ou une analyse d'index inverse.
Le problème est lorsque vous avez un balayage multi-colonnes. Dans ce cas:
index on (foo, bar)
travaillera pour foo asc, bar asc
, ainsi que foo desc, bar desc
. Sur certaines bases de données, cela ne fonctionnera pas sur foo desc, bar asc
(analyse inverse foo, ignore la barre) ou foo asc, bar desc
(analyse foo, ignore la barre).
Descendant peut vous donner un coup de pouce si la colonne (s) contiennent des données séquentiel qui est référencé par « récentes » valeurs - colonnes de date, des colonnes d'identité, etc. D'une manière générale
, les tables/index auraient être vraiment grand pour faire la différence, cependant.
Cela n'affectera pas ce qui est retourné, mais comment.
Qu'est-ce qui relie les docs avec des versions encore inédits? –
C'est le bit important: * Un cas particulier important est ORDER BY en combinaison avec LIMIT n: un tri explicite devra traiter toutes les données pour identifier les n premières lignes, mais s'il y a un index correspondant à ORDER BY, le les n premières lignes peuvent être récupérées directement, sans scanner le reste du tout. * – Mel
@Milen A. Radev Merci de m'avoir fait remarquer, corrigé à point dans la version publiée. Je pense que Google a peut-être aussi répondu à la question sur l'OP. – Kallex