Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Saudações a todos, fiz uma pesquisa em tópicos anteriores e não encontrei algo que me ajudasse, então abro este novo tópico.
minha situação:
Tenho uma tabela onde crio vários questionários:
e minha tabela de respostas é esta:
CREATE TABLE IF NOT EXISTS `gc_resposta_questao` (
`RQ_IdRespQuest` int(10) NOT NULL AUTO_INCREMENT,
`RQ_IdVisitEmpreend` int(10) NOT NULL DEFAULT '0',
`RQ_IdQuest` int(10) NOT NULL DEFAULT '0',
`RQ_IdResp` int(10) NOT NULL DEFAULT '0',
PRIMARY KEY (`RQ_IdRespQuest`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Eis o questionário:
1 - Escolaridade
[ ] A: Primeiro Grau
[ ] B: Segundo Grau
[ ] C: Superior
[ ] D: Mestrado
2 - Idade
[ ] A: 15 a 20 anos
[ ] B: 20 a 25 anos
[ ] C: 25 a 30 anos
[ ] D: 35 a 40 anos
3 - Etc.
Ao fazer uma pesquisa simples buscando apenas uma resposta de uma questão tenho um resultado satisfatório:
SELECT COUNT(DISTINCT RQ_IdVisitEmpreend) AS Total
FROM gc_resposta_questao
WHERE RQ_IdQuest = '1'
AND RQ_IdResp = '4'
Porém o meu relatório precisa ser mais eficiente, preciso combinar vários critérios, por exemplo: quantos de 15 a 20 anos possuem o 2º Grau e tentei a seguinte consulta:
SELECT COUNT(DISTINCT RQ_IdVisitEmpreend) AS Total
FROM gc_resposta_questao
WHERE (RQ_IdQuest = '1' AND RQ_IdResp = '1')
OR (RQ_IdQuest = '2' AND RQ_IdResp = '4')
Porém de maneira nenhuma consigo um resultado satisfatório.
Alguém poderia me dar uma idéia de uma instrução sql mais eficaz?
De um modo que eu posso combinar os critérios?
Abraço a todos.
Mauro
Carregando comentários...