J'ai une table qui est fondamentalement une structure arborescente avec une colonne parent_id
et id
.Oracle: table organisée par index avec des valeurs nulles
parent_id
est null
pour les nœuds racine.
Il existe également une clé étrangère auto-référentielle, de sorte que chaque parent_id
a un id
correspondant.
Cette table est principalement en lecture seule avec des mises à jour par lots pour la plupart peu fréquentes.
L'une des requêtes les plus courantes de l'application qui accède à cette table est select ... where parent_id = X
. Je pensais que cela pourrait être plus rapide si cette table était indexée sur parent_id
.
Cependant, je ne suis pas sûr comment indexer organiser cette table si parent_id
peut être null
. Je préfère ne pas fudger les choses de sorte que parent_id=0
soit un identifiant spécial, car il faudrait ajouter des valeurs factices à la table pour s'assurer que les contraintes de la clé étrangère sont satisfaites, et cela change aussi la logique de l'application.
Existe-t-il un moyen d'indexer organiser une table par des colonnes de valeur null
possibles?
Si j'étais vous je voudrais juste aller avec la valeur 0 dummy. –
En relation: http://stackoverflow.com/questions/1230786/when-does-oracle-index-null-column-values – NullUserException