Qué algoritmo de búsqueda se implementa a la hora de hacer una consulta en bases de datos como SQL?

Julian Alejandro Archila Caro

Julian Alejandro Archila Caro

Pregunta
studenthace 4 años

Qué algoritmo de búsqueda se implementa a la hora de hacer una consulta en bases de datos como SQL?

1 respuestas
para escribir tu comentario
    Francisco José Bohórquez Torres

    Francisco José Bohórquez Torres

    studenthace 4 años

    ¡Hola Julian! Primero que todo hay que aclarar que realmente SQL no es el que genera la forma de hacer la búsqueda o un ordenamiento. SQL solo te permite interactuar con la base de datos y esta es la que dependiendo del motor de bases de datos que use es la que define cómo es su búsqueda u ordenamiento. Así, MySQL, Postgres, SQL Server, entre otros, cada uno puede llegar a diferir en la forma en la que realizan estos algoritmos y tocaría entrar a ver su documentación para tener un mejor entendimiento.   Dicho esto, se te podría decir que tu pregunta depende. Si la tabla de la base de datos no tiene índices que tomen las columnas por las cuales se está filtrando, entonces se ejecuta una búsqueda lineal. Por otra parte, si la tabla sí tiene índices, entonces el motor de base de datos tiene una estructura de datos sobre la cual puede hacer la consulta de una forma mucho más rápida (regularmente con complejidad logarítmica). En algunos casos la estructura es un B-Tree, pero se puede llegar a complejizar mucho dependiendo de cuantos campos cubre el índice. Por lo general el algoritmo de búsqueda sobre un B-Tree es un poco complejo pero puedes encontrar gran cantidad de literatura en internet donde lo explican. También puedes encontrar artículos donde explican con mayor profundidad el uso de estructuras de datos para optimización de búsqueda sobre las bases de datos.   Espero haber sido de ayuda :)

Curso de POO y Algoritmos con Python

Curso de POO y Algoritmos con Python

Comprende la eficiencia algorítmica con Python. Analiza complejidad temporal y espacial, visualiza resultados y resuelve problemas de optimización. Ideal para desarrollar habilidades esenciales en el análisis de algoritmos.

Curso de POO y Algoritmos con Python
Curso de POO y Algoritmos con Python

Curso de POO y Algoritmos con Python

Comprende la eficiencia algorítmica con Python. Analiza complejidad temporal y espacial, visualiza resultados y resuelve problemas de optimización. Ideal para desarrollar habilidades esenciales en el análisis de algoritmos.