sql >> Base de Datos >  >> RDS >> Oracle

¿Cómo se ve un índice de árbol B en más de 1 columna?

Con la mayoría de las implementaciones, la clave es simplemente una clave más larga que incluye todos los valores de la clave, con un separador. No hay magia ahí;-)

En su ejemplo, los valores clave podrían parecerse a

"123499|John Doe|Conway, NH"
"32144|Bill Gates| Seattle, WA"

Una de las características de estos índices con claves compuestas es que los nodos intermedios del árbol pueden utilizarse en algunos casos para "tapar" la consulta.

Por ejemplo, si la consulta es para encontrar el Nombre y la Ciudad dada la ID, dado que la ID es la primera en el índice, el índice puede buscar de manera eficiente. Una vez en el nodo intermedio, puede "analizar" el Nombre y la Ciudad, desde la clave, y no necesita ir al nodo hoja para leer lo mismo.

Sin embargo, si la consulta quisiera mostrar también el número de teléfono, entonces la lógica seguiría la hoja cuando se encuentre el registro completo.