Comunidad de diseño web y desarrollo en internet online

Sentencia SQL | Descendencias

Citar            
MensajeEscrito el 15 Jul 2008 03:36 am
A ver, tengo una tabla con 3 campos, el id del registro, la descripcion del registro y el 3er campo es la relación con el "padre" del registro actual. Ej:

id | desc. | padre
1 | padre | 0
2 | hijo1 | 1
3 | hijo2 | 1
4 | nieto1 | 2

Lo que quisiera es poder saber si dado cierto id el registro en cuestión tiene descendientes. Se que comienza con un select. jajaja... peeeeero... :oops:

Por mauril26

161 de clabLevel



 

mozilla
Citar            
MensajeEscrito el 15 Jul 2008 07:43 am
Te recomiendo que le eches un vistazo a los manuales de mysql

Código :

select * from tabla where padre=idregistro

Por One

Claber

1488 de clabLevel

5 tutoriales

Genero:Masculino  

Programador Web

firefox
Citar            
MensajeEscrito el 15 Jul 2008 04:29 pm
Ok, no es para tanto "uno"...

La cuestión es que no puedo asignarle como padre un tataranieto a su tatarabuelo (ok, no entendí ni yo mismo). :wtf:

Por eso necesito seleccionar todos aquellos registros que NO son descendientes (directos e indirectos) de un registro dado.

Por mauril26

161 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Jul 2008 05:44 pm

Código :

SELECT T.* FROM `tabla` T 
LEFT JOIN ( SELECT id FROM `tabla` WHERE padre=0 ) AS TClean
ON T.padre= TClean.id

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.