Hola,
Aunque
posiblemente podrías probar algo así:
Código:
select
adm_programas.prog_codigo prog_codigo,
sum(if(adm_dias.dia_codigo = 0, 1, 0)) Lunes,
sum(if(adm_dias.dia_codigo = 1, 1, 0)) Martes,
sum(if(adm_dias.dia_codigo = 2, 1, 0)) Miercoles,
.....
from
adm_programas,
adm_conductores,
.....
where
dia_codigo = Param1 and
prog_deta_dia = dia_codigo and
.....
group by adm_programas.prog_codigo
Tiene el inconveniente de tener que modificar los códigos de los días si cambian en la tabla maestra.
Funciona si los programas solamente se transmiten 1 vez al día cada día.
En el campo Lunes vas a tener 1 si se transmite o 0 si no se transmite ese día.
Desde PHP tendrías que verificar y unir ...
Código:
$a = ($rs['Lunes'] == 1 ? 'Lunes' : '');
$b = ($rs['Martes'] == 1 ? 'Martes' : '');
.....
$res = $a . $b ...
Saludos,
ps:
Si los demás campos no te van a servir, solamente usa las tablas:
-- adm_programas
-- adm_programas_detalles
-- adm_dias
De esa forma se simplificaría la consulta.