Hola, necesito su ayuda por favor, tengo una tabla cuya estructura es asi:
id_tareo id_personal fec_tareopers id_codtareo
000001 23 01/05/2019 TD
000002 23 02/05/2019 TD
000003 23 03/05/2019 TN
000004 12 01/05/2019 F
000005 12 02/05/2019 TN
000006 12 03/05/2019 TN
y deseo que mi resultado sea algo asi:
id_personal 01/05/2019 02/05/2019 03/05/2019 TD TN F
23 TD TD TN 2 1 0
12 F TN TN 0 2 1
intente con esta linea pero solo me llena la primera columna (01/05/2019):
SELECT id_personal,
(CASE WHEN AK.fec_tareopers = '01/05/2019' THEN AK.id_codtareo ELSE NULL END) '01/05/2019',
(CASE WHEN AK.fec_tareopers = '02/05/2019' THEN AK.id_codtareo ELSE NULL END) '02/05/2019'
(CASE WHEN AK.fec_tareopers = '03/05/2019' THEN AK.id_codtareo ELSE NULL END) '02/05/2019'
from adm_tareopers AK
inner join adm_personal AP on AK.id_personal=AP.id_personal
group by AK.id_personal
de antemano gracias por su ayuda
Prueba así:
SELECT id_personal,
(select id_codtareo from adm_tareopers where fec_tareopers = '01/05/2019' and id_personal = AK.id_personal) as '01/05/2019',
(select id_codtareo from adm_tareopers where fec_tareopers = '02/05/2019' and id_personal = AK.id_personal) as '02/05/2019',
(select id_codtareo from adm_tareopers where fec_tareopers = '03/05/2019' and id_personal = AK.id_personal) as '03/05/2019'
from adm_tareopers AK
inner join adm_personal AP on AK.id_personal=AP.id_personal
group by AK.id_personal
Saludos,
You are not allowed to view links.
You are not allowed to view links.
Register or Login or You are not allowed to view links.
Register or Login
Prueba así:
SELECT id_personal,
(select id_codtareo from adm_tareopers where fec_tareopers = '01/05/2019' and id_personal = AK.id_personal) as '01/05/2019',
(select id_codtareo from adm_tareopers where fec_tareopers = '02/05/2019' and id_personal = AK.id_personal) as '02/05/2019',
(select id_codtareo from adm_tareopers where fec_tareopers = '03/05/2019' and id_personal = AK.id_personal) as '03/05/2019'
from adm_tareopers AK
inner join adm_personal AP on AK.id_personal=AP.id_personal
group by AK.id_personal
Saludos,
ERES UN GENIO!!!!!, Gracias de corazon hemano
Gracias.
Si el usuario de la app se confunde y para el mismo id y misma fecha crea 2 o más tareopers la consulta fallará. Para evitar eso o declaras los 3 campos como primary key compuesta o haces un filtro que primero busque que ya no exista y si existe no lo permita o haga un update en lugar de un insert o le dices que solo traiga la primer ocurrencia en el sql agregando limit 1 dentro de cada subconsulta de los parentesis. Eso último filtraría el error pero quedaría la basura en la base de datos.