Foros del Web » Programando para Internet » ASP Clásico »

Llenar combo de 2 tablas

Estas en el tema de Llenar combo de 2 tablas en el foro de ASP Clásico en Foros del Web. bueno amigos aparte del otro problema que expuse ahora necesito saber como puedo hacer para solucionar lo siguiente, tengo 2 tablas personal_interno [id_PI, nombre, ap, ...
  #1 (permalink)  
Antiguo 13/03/2008, 12:39
Avatar de omegafunky  
Fecha de Ingreso: diciembre-2003
Ubicación: Tabasco, Mexico
Mensajes: 3.534
Antigüedad: 20 años, 5 meses
Puntos: 33
Exclamación Llenar combo de 2 tablas

bueno amigos aparte del otro problema que expuse ahora necesito saber como puedo hacer para solucionar lo siguiente, tengo 2 tablas personal_interno [id_PI, nombre, ap, am] y la tabla personal_externo [id_PE, nombre, ap, am] como seria para poder juntar todo el personal tanto interno como externo en un solo combo y ordenarlo por nombre? espero me puedan ayudar, saludos
__________________
Canon 7D | Canon 5D Mark II | 35mm 1.4L | 135mm 2L | Pocket Wizard Plus III
  #2 (permalink)  
Antiguo 13/03/2008, 13:13
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Re: Llenar combo de 2 tablas

Trata esto:

Código:
SELECT * FROM(
  SELECT id_PI, nombre, ap, am, 'interno' as personal_tipo FROM personal_interno 
  UNION
  SELECT id_PE, nombre, ap, am, 'externo' as personal_tipo FROM personal_externo
) AS v1 ORDER BY nombre
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 13/03/2008, 13:17
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 7 meses
Puntos: 8
Re: Llenar combo de 2 tablas

Que tal Omega.

Pues hay dos maneras de solucionarlo.

1.- (La sencilla). La cadena SQL que tienes que enviar a tu base de datos es como sigue:

Código:
SELECT id_PI, nombre, ap, am
FROM PI
UNION
SELECT id_PE, nombre, ap, am
FROM PE
ORDER BY ap, am, nombre
Recuperas tu recordset y list!

2.- (La complicada -creo-). Haces dos consultas, obtienes dos recordsets, juntas esos dos recordsets en un arreglo, y finalmente ordenas ese arreglo.

Saludos!
  #4 (permalink)  
Antiguo 13/03/2008, 13:24
Avatar de omegafunky  
Fecha de Ingreso: diciembre-2003
Ubicación: Tabasco, Mexico
Mensajes: 3.534
Antigüedad: 20 años, 5 meses
Puntos: 33
Re: Llenar combo de 2 tablas

gracias por sus respuestas, intentare lo que me dieron y ya les comento como me fue, saludos
__________________
Canon 7D | Canon 5D Mark II | 35mm 1.4L | 135mm 2L | Pocket Wizard Plus III
  #5 (permalink)  
Antiguo 13/03/2008, 14:27
Avatar de omegafunky  
Fecha de Ingreso: diciembre-2003
Ubicación: Tabasco, Mexico
Mensajes: 3.534
Antigüedad: 20 años, 5 meses
Puntos: 33
Exclamación Re: Llenar combo de 2 tablas

bueno ya lo estoy intentando solo que no me queda claro eso que pusiste de 'interno' y 'externo' otra pregunta entonces los IDs de las 2 tablas se juntarian en una sola columna? si es asi como los obtengo xk recuerda k necesito el ID para ponerlo en el OPTION VALUE y pues ya el nombre en la lista, espero me puedas ayudar con eso, saludos amigo gracias por todas las veces que me has ayudado a resolver mis dudas.
__________________
Canon 7D | Canon 5D Mark II | 35mm 1.4L | 135mm 2L | Pocket Wizard Plus III
  #6 (permalink)  
Antiguo 13/03/2008, 16:03
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Re: Llenar combo de 2 tablas

Interno y externo lo puse para que si se necesita se pueda diferenciar qué elemento viene de dónde.
Lo que haces con la consulta es generar un recordset, que es lo mismo que viniera de una sola tabla, yo no me fijé que tus ids se llamaba distinto, puedes ocupar un alias para este propósito, de esta manera los ids los recuperarías de la forma convencional:

Código:
SELECT * FROM(
  SELECT id_PI AS id, nombre, ap, am, 'interno' as personal_tipo FROM personal_interno 
  UNION
  SELECT id_PE AS id, nombre, ap, am, 'externo' as personal_tipo FROM personal_externo
) AS v1 ORDER BY nombre
Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
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 17:38.