Jump to content
Fórum Script Brasil
  • 0

Usar a funcao Count


tlima

Question

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.codsetor

From usuarios u, departamento d

Where d.codsetor = 2

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0
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.codsetor

From usuarios u, departamento d

Where d.codsetor = 2

O 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.

Link to comment
Share on other sites

  • 0
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.codsetor

From usuarios u, departamento d

Where d.codsetor = 2

O 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 FUNCIONARIO

id_func, func_nome

TABELA DEPARTAMENTO

id_departamento, dep_nome

TABELA LOGS

id_logs, id_func, hora_login, hora_logout, id_departamento

Query

SELECT 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

Link to comment
Share on other sites

  • 0

'tlima'

Para ficar claro a resposta

Na 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.

Link to comment
Share on other sites

  • 0
"Como faco para retornar o numero de acesso de todos os funcionarios?" E não apenas um?

Faça assim

SELECT 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

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...