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

where dos veces en el mismo campo

Estas en el tema de where dos veces en el mismo campo en el foro de Mysql en Foros del Web. Hola amigos tengo estas tablas Código: tabla horas_asignada mod5_horas_administrativo_id, mod10_usr_id, mod5_dias_id, mod5_horas_administrativo_in, mod5_horas_administrativo_out tabla horas mod5_horas_generales_id, mod5_horas_generales_hora quiero consultar el horario de entrada y salida ...
  #1 (permalink)  
Antiguo 12/03/2009, 18:03
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
Pregunta where dos veces en el mismo campo

Hola amigos tengo estas tablas

Código:
tabla horas_asignada

mod5_horas_administrativo_id,
mod10_usr_id,
mod5_dias_id,
mod5_horas_administrativo_in,
mod5_horas_administrativo_out

tabla horas

mod5_horas_generales_id,
mod5_horas_generales_hora
quiero consultar el horario de entrada y salida de un usuario
pero tanto el campo mod5_horas_administrativo_in,
mod5_horas_administrativo_out guardan el id de la tabla horas
digamos que tengamos estos registros
Código:
mod5_horadmin_id = 5
mod5_horadmin_hora = 9:00
------------------------------------
mod5_horadmin_id = 18
mod5_horadmin_hora = 17:00
Código:
ejemplo de un registro en la tabla horas_asignda

mod5_horas_administrativo_id = 10
mod10_usr_id = 250
mod5_dias_id = 4
mod5_horas_administrativo_in = 5
mod5_horas_administrativo_out = 18
como puedo ver en pantalla asi
10 -- 250 -- 4 -- 9:00 -- 17:00

como le puedo hacer espero sus comentarios ya que apartir de aqui debere representarlo en
condigo php usando mysql

saludos amigos

esperos sus comentarios
Gracias
__________________
gerardo
  #2 (permalink)  
Antiguo 13/03/2009, 02:05
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: where dos veces en el mismo campo

Prueba esto:

SELECT ha.mod5_horas_administrativo_id, ha.mod10_usr_id, ha.mod5_dias_id, h1.mod5_horas_admin_hora entrada, h2.mod5_horas_admin_hora salida
FROM `horas_asignada` ha
INNER JOIN horas h1 ON ha.mod5_horas_administrativo_in = h1.mod5_horas_admin_id
INNER JOIN horas h2 ON ha.mod5_horas_administrativo_out = h2.mod5_horas_admin_id
  #3 (permalink)  
Antiguo 13/03/2009, 10:47
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
Sonrisa Respuesta: where dos veces en el mismo campo

gracias jurena tratare de aplicarlo
y aplicarlo en php a ver si sale jeje

saludos
__________________
gerardo
  #4 (permalink)  
Antiguo 13/03/2009, 11:19
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
Pregunta Respuesta: where dos veces en el mismo campo

Cita:
Iniciado por jurena Ver Mensaje
Prueba esto:

SELECT ha.mod5_horas_administrativo_id, ha.mod10_usr_id, ha.mod5_dias_id, h1.mod5_horas_admin_hora entrada, h2.mod5_horas_admin_hora salida
FROM `horas_asignada` ha
INNER JOIN horas h1 ON ha.mod5_horas_administrativo_in = h1.mod5_horas_admin_id
INNER JOIN horas h2 ON ha.mod5_horas_administrativo_out = h2.mod5_horas_admin_id
Lo he hecho pero no se si este bien estruturado usando aplicando un filtro de busqueda

Código:
SELECT
mod5_horas_administrativos.mod5_horas_administrativo_id,
mod5_horas_administrativos.mod10_usr_id,
mod5_horas_administrativos.mod5_dias_id,
mod5_horas_administrativos.mod5_horas_administrativo_in,
mod5_horas_administrativos.mod5_horas_administrativo_out,
H1.mod5_horadmin_id,
H1.mod5_horadmin_hora,
H2.mod5_horadmin_id,
H2.mod5_horadmin_hora
FROM
mod5_horas_administrativos
Inner Join mod5_horas_generales AS H1 ON mod5_horas_administrativos.mod5_horas_administrativo_in = H1.mod5_horadmin_id
Inner Join mod5_horas_generales AS H2 ON mod5_horas_administrativos.mod5_horas_administrativo_out = H2.mod5_horadmin_id
WHERE
mod5_horas_administrativos.mod10_usr_id =  '2135' AND
mod5_horas_administrativos.mod5_dias_id =  '5'
espero tus comentarios

saludos y gracias
__________________
gerardo
  #5 (permalink)  
Antiguo 13/03/2009, 11:21
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: where dos veces en el mismo campo

Si vas a cargar datos en PHP, usa para los campos h1.mod5_horas_admin_hora el alias entrada, es decir, que entrada sería el nombre de ese campo; y para h2.mod5_horas_admin_hora el alias salida como si fuera el nombre de ese campo.
Creo que está bien, pero serás tú quien deberá comprobar que los resultados obtenidos son los deseados. Haz varias pruebas.Como quiera que los campos del where son de la tabla mod5_horas_administrativos no creo que tengas problemas.

Última edición por jurena; 13/03/2009 a las 11:26
  #6 (permalink)  
Antiguo 13/03/2009, 11:45
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
Respuesta: where dos veces en el mismo campo

ahh ok espero haber entendido
__________________
gerardo
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 16:34.