Luckshor 0 Denunciar post Postado Abril 16, 2014 Olá Pessoal tudo bem? Estou desenvolvendo um projetinho de um clinica medica e nela estou tentando criar um grafico para demonstrar quantas consultas foram realizadas no mês de acordo com as especialidades selecionadas pelo usuarios. Criei uma tabela agenda com os seguintes campos Id_agenda; Id_medico; id_especialidade; id_cliente; data (xxxx - xx - xx) hora (xx : xx) Ai estou tendo uma dificuldade para montar a SELECT, a que eu fiz primeiramente é a seguinte SELECT COUNT(id_agenda) as Qtd, id_especialidade, YEAR(data) as Ano, MONTH(data) as Mes,FROM agendaWHERE id_especialidade IN ('Cardiologista','Clinico Geral') AND ---- (Aqui pode variar uma especialidade ou varias) data >= '2014-01-01' AND data <= '2014-12-31' GROUP BY Ano, Mes, id_especialidadeOrder BY Ano, Mes, id_especialidadeEla me retorna o seguinteQtd -- especialidade -- mês -- Ano1 Cardiologista 04 20143 Clinico Geral 05 20142 Clinico Geral 06 20141 Cardiologista 08 20141 Clinico Geral 08 2014 Minha duvida maior.na select tem as duas especialidades Cardiologista e ClinicoComo eu quero gerar um grafico para mostrar os valores queria que aparece assim Ano Mes Cardiologista Clinico 2014 04 1 0 2014 05 0 3 2014 06 0 2 2014 08 1 1 Alguem consegue me mostrar algum caminho para chegar no resultado? valeuu obrigado pela força Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Abril 16, 2014 Use o CASE ou IIF http://forum.imasters.com.br/topic/511394-linhas-virarem-colunas/ http://forum.imasters.com.br/topic/515040-listar-quantidade-de-pedidos-por-ms-sem-repetir-cliente/ Compartilhar este post Link para o post Compartilhar em outros sites
Luckshor 0 Denunciar post Postado Abril 16, 2014 Vendo o post da valeria, deu uma luz, mais ela usa tabelas com inner eu só não compreendi como encaixar o CASE na minha select para ajudar Aaaaaa.... Agora simm compreendi, como é feitooo... Motta.... Muitissimo obrigado clariou 3 semanas quebrando a cabeça! select id_especialidade, Year(data) as ano, sum(case when month(data) = 1 then 1 else 0 end) jan, sum(case when month(data) = 2 then 1 else 0 end) fevereiro, sum(case when month(data) = 3 then 1 else 0 end) março, sum(case when month(data) = 4 then 1 else 0 end) abril, sum(case when month(data) = 5 then 1 else 0 end) maio, sum(case when month(data) = 6 then 1 else 0 end) junho, sum(case when month(data) = 7 then 1 else 0 end) julho, sum(case when month(data) = 8 then 1 else 0 end) agosto, sum(case when month(data) = 9 then 1 else 0 end) setembro, sum(case when month(data) = 10 then 1 else 0 end) outubro, sum(case when month(data) = 11 then 1 else 0 end) novembro, sum(case when month(data) = 12 then 1 else 0 end) dezembroFROM agendasWHERE id_especialidade IN (3,2)AND data >= '2001-01-01' AND data <= '2020-12-01'group by ano, id_especialidade Compartilhar este post Link para o post Compartilhar em outros sites