¿Como hacer un select "jerárquico"?

29/09/2003 - 23:29 por Rodríguez, Pablo | Informe spam
Hola Amigos:

Tengo una tabla donde obtengo registros padre e hijo a la vez. La estructura
de la tabla es la siguiente:

CODIGO_AREA int
DESCRIPCION varchar
CODIGO_PADRE int

y los datos serían por ejemplo:

1 AREA0 0
2 AREA1 1
3 AREA2 1
4 AREA3 1
5 AREA31 4
6 AREA312 5
7 AREA11 2
8 AREA12 2
9 AREA13 2

y necesito generar lo siguiente:

1 AREA0
2 > AREA1
7 >>AREA11
8 >>AREA12
9 >>AREA13
3 >AREA2
4 >AREA3
5 >>AREA31
6 >>>AREA312

ojalá me puedan ayudar...es urgente :-)

Preguntas similare

Leer las respuestas

#1 Carlos Sacristan
30/09/2003 - 08:38 | Informe spam
En los BOL hay un tema que explica cómo mostrar una salida con los datos
ordenados jerárquicamente. Busca "Expandir jerarquías" y verás un ejemplo de
geografía que podrás adaptar sin problemas a tu situación


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)
MVP SQL Server
Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL

Archivo de respuestas anteriores en:
http://groups.google.com/groups?hl=....public.es
.sqlserver

(Guía de netiquette del foro)
http://www.helpdna.net/bosqlfaq00.htm
http://perso.wanadoo.es/rubenvigon/foro

(FAQ's de SQL Server)
http://support.microsoft.com/defaul.../70faq.asp
http://www.helpdna.net/bosqlfaq.htm

"Rodríguez, Pablo" escribió en el mensaje
news:eeX#w#
Hola Amigos:

Tengo una tabla donde obtengo registros padre e hijo a la vez. La


estructura
de la tabla es la siguiente:

CODIGO_AREA int
DESCRIPCION varchar
CODIGO_PADRE int

y los datos serían por ejemplo:

1 AREA0 0
2 AREA1 1
3 AREA2 1
4 AREA3 1
5 AREA31 4
6 AREA312 5
7 AREA11 2
8 AREA12 2
9 AREA13 2

y necesito generar lo siguiente:

1 AREA0
2 > AREA1
7 >>AREA11
8 >>AREA12
9 >>AREA13
3 >AREA2
4 >AREA3
5 >>AREA31
6 >>>AREA312

ojalá me puedan ayudar...es urgente :-)


Respuesta Responder a este mensaje
#2 Rodríguez, Pablo
30/09/2003 - 14:51 | Informe spam
Gracias Carlos...voy a adaptar y probar el ejemplo a mis necesidades.

"Carlos Sacristan" <csacristanARROBAocasoPUNTOes> escribió en el mensaje
news:%
En los BOL hay un tema que explica cómo mostrar una salida con los


datos
ordenados jerárquicamente. Busca "Expandir jerarquías" y verás un ejemplo


de
geografía que podrás adaptar sin problemas a tu situación


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)
MVP SQL Server
Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL

Archivo de respuestas anteriores en:



http://groups.google.com/groups?hl=....public.es
.sqlserver

(Guía de netiquette del foro)
http://www.helpdna.net/bosqlfaq00.htm
http://perso.wanadoo.es/rubenvigon/foro

(FAQ's de SQL Server)
http://support.microsoft.com/defaul.../70faq.asp
http://www.helpdna.net/bosqlfaq.htm

"Rodríguez, Pablo" escribió en el mensaje
news:eeX#w#
> Hola Amigos:
>
> Tengo una tabla donde obtengo registros padre e hijo a la vez. La
estructura
> de la tabla es la siguiente:
>
> CODIGO_AREA int
> DESCRIPCION varchar
> CODIGO_PADRE int
>
> y los datos serían por ejemplo:
>
> 1 AREA0 0
> 2 AREA1 1
> 3 AREA2 1
> 4 AREA3 1
> 5 AREA31 4
> 6 AREA312 5
> 7 AREA11 2
> 8 AREA12 2
> 9 AREA13 2
>
> y necesito generar lo siguiente:
>
> 1 AREA0
> 2 > AREA1
> 7 >>AREA11
> 8 >>AREA12
> 9 >>AREA13
> 3 >AREA2
> 4 >AREA3
> 5 >>AREA31
> 6 >>>AREA312
>
> ojalá me puedan ayudar...es urgente :-)
>
>


Respuesta Responder a este mensaje
#3 Hernán Castelo
30/09/2003 - 15:14 | Informe spam
ahhhh
yo (que uso VFox)
me traigo los datos ordenados por COD_PADRE, COD_AREA
y lo soluciono con una función recursiva

pero dentro mismo de SQL server, como StoredP digamos...
no se me ocurre, a ver si alguno tiene una buena alternativa !

atte,
Hernán Castelo
UTN - Buenos Aires
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .

"Rodríguez, Pablo" escribió en el mensaje
news:eeX%23w%
Hola Amigos:

Tengo una tabla donde obtengo registros padre e hijo a la vez. La


estructura
de la tabla es la siguiente:

CODIGO_AREA int
DESCRIPCION varchar
CODIGO_PADRE int

y los datos serían por ejemplo:

1 AREA0 0
2 AREA1 1
3 AREA2 1
4 AREA3 1
5 AREA31 4
6 AREA312 5
7 AREA11 2
8 AREA12 2
9 AREA13 2

y necesito generar lo siguiente:

1 AREA0
2 > AREA1
7 >>AREA11
8 >>AREA12
9 >>AREA13
3 >AREA2
4 >AREA3
5 >>AREA31
6 >>>AREA312

ojalá me puedan ayudar...es urgente :-)


Respuesta Responder a este mensaje
#4 gato2002
07/10/2003 - 02:38 | Informe spam
Consulta la ayuda de ado, comando shape, append.
shape seleccion1 as tabla1 append seleccion2 as tabla2 related
tabla1.itemcomun to tabla2.itemcomun;

rs=RecordsetConsultaShape();
el hijo accedes por
rshijo=rs("tabla2");


Rodríguez, Pablo escribió:
Hola Amigos:

Tengo una tabla donde obtengo registros padre e hijo a la vez. La estructura
de la tabla es la siguiente:

CODIGO_AREA int
DESCRIPCION varchar
CODIGO_PADRE int

y los datos serían por ejemplo:

1 AREA0 0
2 AREA1 1
3 AREA2 1
4 AREA3 1
5 AREA31 4
6 AREA312 5
7 AREA11 2
8 AREA12 2
9 AREA13 2

y necesito generar lo siguiente:

1 AREA0
2 > AREA1
7 >>AREA11
8 >>AREA12
9 >>AREA13
3 >AREA2
4 >AREA3
5 >>AREA31
6 >>>AREA312

ojalá me puedan ayudar...es urgente :-)


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida