Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

AGRUPAR resultado, en SQL 2000

Estas en el tema de AGRUPAR resultado, en SQL 2000 en el foro de SQL Server en Foros del Web. imaginen que tenga 2 tablas: paises y ciudades... deseo hacer un listado de toodos los paises, con sus ciudades a lado.... algo asi: Código: pais ...
  #1 (permalink)  
Antiguo 19/07/2010, 08:48
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Pregunta AGRUPAR resultado, en SQL 2000

imaginen que tenga 2 tablas: paises y ciudades...

deseo hacer un listado de toodos los paises, con sus ciudades a lado.... algo asi:

Código:
pais	|ciudades
----------------------------
peru	|lima arequipa tacna
chile	|arica tarapaca
bolivia	|la paz 
mexico	|huadalajara
japon	|tokio hokaido
espero puedan entender... por ejemplo:

en la tabla país tendria los registros (idpais, nombre):
peru, cihle, bolivia, mexico, japon

en la tabla ciudades tendria los registros (idciudad, idpais-FK, nombre):
lima, arequipa, tacna, arica, tarapaca, la paz, huadalajara, tokio, hokaido

espero puedan ayudarme T_T
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #2 (permalink)  
Antiguo 19/07/2010, 09:39
Avatar de -rommel_  
Fecha de Ingreso: junio-2008
Ubicación: Lima
Mensajes: 360
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: AGRUPAR resultado, en SQL 2000

De hecho que tienes que tener una funcion para concatenar registros
intenta asi

Select IdPais, NombrePais, (Select functionAgregarCiudades(IdPais)) as Ciudades

FuncionAgregarCiudades(IsPais) -> Concatena la lista de las ciudades por medio de un CURSOR..

esta pagina de ayudara un poco mas
http://www.forosdelweb.com/f87/como-...-campo-389466/
  #3 (permalink)  
Antiguo 19/07/2010, 12:08
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: AGRUPAR resultado, en SQL 2000

No es necesario un cursor para concatenar.
Debieras tener en cuenta si el pais tiene muchas ciudades.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #4 (permalink)  
Antiguo 20/07/2010, 08:36
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Respuesta: AGRUPAR resultado, en SQL 2000

mmmmmmmmmmmm, que solución podrian dar a dicho problema???, deseo mostrar un listado de tooos los paises y a lado toodas sus ciudades concatenadas... es necesario crear una función??? o.o
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #5 (permalink)  
Antiguo 20/07/2010, 08:40
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: AGRUPAR resultado, en SQL 2000

Que haras despues de tener ese resultado?
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #6 (permalink)  
Antiguo 20/07/2010, 09:34
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: AGRUPAR resultado, en SQL 2000

No veo objetivo de tener un listado de esta forma, de hecho, habrá países que tengan infinidad de ciudades, ¿que pasaría en ese caso?

PD: Se escribe GUADALAJARA, con "G"
  #7 (permalink)  
Antiguo 20/07/2010, 15:18
Avatar de -rommel_  
Fecha de Ingreso: junio-2008
Ubicación: Lima
Mensajes: 360
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: AGRUPAR resultado, en SQL 2000

yo creo que los quiere tener en 2 Variables...
Pais= PAIS
Ciudades = Guadalajara, Huadalajara, guadalahara

la idea es esa... para no usar un while... e ir concatenando... dentro de su Aplicacion...
  #8 (permalink)  
Antiguo 21/07/2010, 12:35
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: AGRUPAR resultado, en SQL 2000

De acuerdo, pero si nos "trasladamos" a la programacion (vb, .net, etc.), una vez teniendo el dato de PAIS, puede disparar el procedure que obtenga CIUDAD (otro recordset) y posteriormente, disparar otro store para obtener PROVINCIA, ESTADO, POBLACION, COLONIA, BARRIO, etc.

¿No es asi?

Digo, seria mucho mas EFICIENTE, que cargar de un PAIS, todas sus CIUDADES, COLONIAS, PUEBLOS, REGIONES, ESTADOS, en la memoria.

Saludos
  #9 (permalink)  
Antiguo 21/07/2010, 13:38
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: AGRUPAR resultado, en SQL 2000

Lo primero es saber para que necesita los datos de esa forma.
Al parecer se dirige a un callejon sin salida.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.

Etiquetas: agrupar, sql, resultados
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:38.