Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

215
Vistas
¿Consulta de ruta SQL simple?

Estoy trabajando en un libro de texto de introducción SQL y estoy confundido por el siguiente problema, donde se nos da la tabla y los valores:

 CREATE TABLE LineageTable ( parent INT, id INT, genus_name VARCHAR(30), PRIMARY KEY (id) ); INSERT INTO LineageTable VALUES (3, 1, 'FamilyA'), (2, 4, 'FamilyB'), (7, 2, 'FamilyC');

Y quiero escribir una función que devuelva una cadena de texto que represente la ruta desde el nombre dado hasta la raíz deseada

Mi intento:

 CREATE FUNCTION LineageTable (input VARCHAR(50)) RETURNS TABLE (input VARCHAR(50)) AS $$ BEGIN RETURN QUERY SELECT input FROM LineageTable1 INNER JOIN LineageTable ON LineageTable.parent = LineageTable.id WHERE LineageTable1.genus_name = LineageTable1.genus_name; END $$

Sin embargo, estoy confundido sobre cómo iterar a través de esta tabla varias veces para unir la ruta correctamente. ¿Algunas ideas? ¡Gracias a todos!

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

En Postgres puede usar una consulta RECURSIVA :

 WITH RECURSIVE Rec as ( SELECT id, parent_id, Name FROM Hierarchy WHERE Name = 'Sirenia' UNION ALL SELECT Hierarchy.id, Hierarchy.parent_id, Hierarchy.Name FROM Hierarchy INNER JOIN Rec ON Hierarchy.id = Rec.parent_Id ) SELECT string_agg(Name, '->') path FROM Rec; | path | |:---------------------------------:| | Sirenia->Paenungulata->Afrotheria |

Rextester aquí

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda