CALCULANDO NO MYSQL
Pessoal, sou novo aqui já vi muitos artigos sobre isso e nenhum me ajudou, eu tenho uma consulta de SQL que me retorna uma serie de valores, eu saber qual a porcentagem que esse valor representa em cima do total, não consegui definir isso apenas em um select pois o group by estava atrapalhando, então resolvi criar 2 consultas uma que me fala o valor total da coluna e outra que me da detalhado cada valor.. mas com as duas separadas nao adianta nada, será que poderiam ajudar em calcular a porcentagem na primeira consulta ou a juntar as duas e eu calcular no código ?
##CONSULTA QUE REPRESENTA O VALOR TOTAL.
SELECT COUNT(id)
FROM rg_digital_plus
WHERE id_empresa = 269
AND data_cadastro BETWEEN 20160201 AND 20160215;
##CONSULTA QUE REPRESENTA O VALOR DETALHADO DE CADA VALOR.
SELECT e.nome, s.descricao , COUNT(d.id_status_proposta) AS quantidade
FROM rg_digital_plus AS D INNER JOIN rg_usuarios AS U ON D.id_usuario=u.usu_id
INNER JOIN rg_empresas AS E ON D.id_empresa=E.id_empresa
INNER JOIN rg_departamentos AS DE ON d.id_departamento=de.id_departamento
INNER JOIN status_proposta AS s ON d.id_status_proposta=s.id
WHERE d.id_empresa = 269
AND d.data_cadastro BETWEEN 20160201 AND 20160215
GROUP BY e.id_empresa, d.id_status_proposta;
##CONSULTA QUE REPRESENTA O VALOR TOTAL.
SELECT COUNT(id)
FROM rg_digital_plus
WHERE id_empresa = 269
AND data_cadastro BETWEEN 20160201 AND 20160215;
##CONSULTA QUE REPRESENTA O VALOR DETALHADO DE CADA VALOR.
SELECT e.nome, s.descricao , COUNT(d.id_status_proposta) AS quantidade
FROM rg_digital_plus AS D INNER JOIN rg_usuarios AS U ON D.id_usuario=u.usu_id
INNER JOIN rg_empresas AS E ON D.id_empresa=E.id_empresa
INNER JOIN rg_departamentos AS DE ON d.id_departamento=de.id_departamento
INNER JOIN status_proposta AS s ON d.id_status_proposta=s.id
WHERE d.id_empresa = 269
AND d.data_cadastro BETWEEN 20160201 AND 20160215
GROUP BY e.id_empresa, d.id_status_proposta;
Gabriel Rodrigues
Curtidas 0
Melhor post
Fabiano Carvalho
25/05/2016
SELECT e.nome, s.descricao , COUNT(d.id_status_proposta) AS quantidade, COUNT(d.id_status_proposta) / ( SELECT COUNT(id) FROM rg_digital_plus WHERE id_empresa = 269 AND data_cadastro BETWEEN 20160201 AND 20160215) as Porcentagem FROM rg_digital_plus AS D INNER JOIN rg_usuarios AS U ON D.id_usuario=u.usu_id INNER JOIN rg_empresas AS E ON D.id_empresa=E.id_empresa INNER JOIN rg_departamentos AS DE ON d.id_departamento=de.id_departamento INNER JOIN status_proposta AS s ON d.id_status_proposta=s.id WHERE d.id_empresa = 269 AND d.data_cadastro BETWEEN 20160201 AND 20160215 GROUP BY e.id_empresa, d.id_status_proposta;
GOSTEI 1
Mais Respostas
Gabriel Rodrigues
25/05/2016
Você é o cara !!!
funcionou, vlw !
funcionou, vlw !
GOSTEI 0