tlima Posted November 4, 2011 Report Share Posted November 4, 2011 Tenho uma consulta e estou usando o count para calcular a quantidade de acessos dos funcionarios ao sistema, porem ao usar o count retorna apenas uma linha.Como faco para retornar o numero de acesso de todos os funcionarios?Select Count(u.id), u.nome, d.codsetorFrom usuarios u, departamento dWhere d.codsetor = 2 Quote Link to comment Share on other sites More sharing options...
0 Denis Courcy Posted November 4, 2011 Report Share Posted November 4, 2011 Tenho uma consulta e estou usando o count para calcular a quantidade de acessos dos funcionarios ao sistema, porem ao usar o count retorna apenas uma linha.Como faco para retornar o numero de acesso de todos os funcionarios?Select Count(u.id), u.nome, d.codsetorFrom usuarios u, departamento dWhere d.codsetor = 2O que esta select está fazendo? Informa o objetivo dela. Ela não está ligando uma tabela a outra. Esta consulta ficará extremamente lenta quando houver uma quantidade maior de registros. Quote Link to comment Share on other sites More sharing options...
0 tlima Posted November 4, 2011 Author Report Share Posted November 4, 2011 Tenho uma consulta e estou usando o count para calcular a quantidade de acessos dos funcionarios ao sistema, porem ao usar o count retorna apenas uma linha.Como faco para retornar o numero de acesso de todos os funcionarios?Select Count(u.id), u.nome, d.codsetorFrom usuarios u, departamento dWhere d.codsetor = 2O que esta select está fazendo? Informa o objetivo dela. Ela não está ligando uma tabela a outra. Esta consulta ficará extremamente lenta quando houver uma quantidade maior de registros.Na verdade coloquei apenas uma ideia de como funcionaria, visto que já fiz outros post e não obtive a resposta.Veja só:TABELA FUNCIONARIOid_func, func_nomeTABELA DEPARTAMENTOid_departamento, dep_nomeTABELA LOGSid_logs, id_func, hora_login, hora_logout, id_departamentoQuerySELECT COUNT (l.id_func), f.func_nome, d.dep_nome FROM logs l INNER JOIN funcionario f ON f.id_func = l.id_func INNER JOIN departamento d ON d.id_departamento = l.id_departamento WHERE d.id_departamento = 2 Quote Link to comment Share on other sites More sharing options...
0 Denis Courcy Posted November 4, 2011 Report Share Posted November 4, 2011 'tlima' Para ficar claro a respostaNa verdade coloquei apenas uma ideia de como funcionaria, visto que já fiz outros post e não obtive a resposta.Analisei seus posts anteriores. Você postou na área de SQL Server um post identico a este e não teve resposta e você postou na área de PHP, sobre outro assunto, e Obteve resposta.Aqui na área de MySQL você está postando somente agora e estou respondendo.Mas, acho que ainda não acordei, pois devo estar pensando lento ou ainda não adquiri os poderes do prof. Xavier. :D Qual o objetivo de sua sonsulta?O que você quer que ela retorne?O uso da função de agregação COUNT requer o uso da cláusula GROUP BY em sua consulta. Quote Link to comment Share on other sites More sharing options...
0 tlima Posted November 4, 2011 Author Report Share Posted November 4, 2011 Deixa eu te ajudar, o que essa consulta retorna pra voce?A mesma pergunta"Como faco para retornar o numero de acesso de todos os funcionarios?" E não apenas um? Quote Link to comment Share on other sites More sharing options...
0 Denis Courcy Posted November 4, 2011 Report Share Posted November 4, 2011 "Como faco para retornar o numero de acesso de todos os funcionarios?" E não apenas um?Faça assimSELECT l.id_func, f.func_nome, COUNT (l.id_func) AS QTD_ACESSOS, d.dep_nome FROM logs l INNER JOIN funcionario f ON f.id_func = l.id_func INNER JOIN departamento d ON d.id_departamento = l.id_departamento GROUP BY l.id_func Quote Link to comment Share on other sites More sharing options...
Question
tlima
Tenho uma consulta e estou usando o count para calcular a quantidade de acessos dos funcionarios ao sistema, porem ao usar o count retorna apenas uma linha.
Como faco para retornar o numero de acesso de todos os funcionarios?
Link to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.