1
resposta

Consulta SQLite

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:

TURMASMANHATARDEINTEGRAL
Maternal 1210
Maternal 2304

Vi algumas soluções com CASE, mas pode haver outros cadastros de "turmas" e "turnos" posteriormente, então não me ajudaria.

1 resposta

Thiago, tudo bem ?

Cara eu acho que isso que tu quer fazer não rola, não tenho 100% de certeza, mas acho que você com os dados pode fazer esse algoritmo no código, que seria tranquilo de resolver, inclusive não é algo fora do comum.