Boa noite, pessoal.
Estou usando o select abaixo, mas gostaria que os turnos virassem colunas. Como não tem a opção do pivot, como posso fazer isso?
select tma.turma as TURMAS, tno.turno as TURNOS, count (tno.turno) as QTDE
from (select * from Visita v
where
(v.dataCadastro BETWEEN (strftime(v.dataCadastro, '2021-04-01')) AND
(strftime(v.dataCadastro, '2021-05-31')))) resultado
INNER JOIN Turma tma ON (resultado.turma_id = tma.id)
INNER JOIN Turno tno ON (resultado.turno_id = tno.id)
group by TURMAS, TURNOS
Por exemplo:
TURMAS | MANHA | TARDE | INTEGRAL |
Maternal 1 | 2 | 1 | 0 |
Maternal 2 | 3 | 0 | 4 |
Vi algumas soluções com CASE, mas pode haver outros cadastros de "turmas" e "turnos" posteriormente, então não me ajudaria.