top of page

Realizar contagem da consulta

Atualizado: 19 de set.



*️⃣ Neste exemplo quero contar quantas vezes o nome(nome_fantasia) aparece na consulta, dentro de um determinado período com BETWEEN





   SELECT NOME_FANTASIA, COUNT(*) AS total

FROM consumidorGov

WHERE DATA_FINALIZACAO BETWEEN '2023-07-01' AND '2023-09-30'

GROUP BY NOME_FANTASIA

HAVING COUNT(*) > 1;

O GROUP BY faz o agrupamento dos resultados pela coluna NOME_FANTASIA, ou seja para cada nome, o COUNT (*) irá contar quantas vezes esse nome aparece na tabela dentro do intervalo de datas especificado com o BEYWEEN.


HAVING COUNT (*) >1 é usado para filtrar grupos que foram formados pelo GROUP BY. Neste exemplo, ele mantém apenas os grupos (NOME_FANTASIA) que têm um total maior que 1.





*️⃣ Neste exemplo, preciso que conte quantas vezes o nome do funcionário aparece no resultado da minha consulta:




DECLARE @MES INT, @ANO INT, @DIAS INT, @VR1 DECIMAL, @VR2 DECIMAL, @VL1 DECIMAL, @VL2 DECIMAL, @VLT DECIMAL


SET @MES = 4 SET @ANO = 2023 SET @DIAS = 21

SET @VR1 = 0.00 SET @VR2 = 0.00

SET @VL1 = 0.00 SET @VL2 = 0.00 SET @VLT = 0.00


;WITH CTE_Result AS (


SELECT DISTINCT

FROM

WHERE


)


SELECT *,

(SELECT COUNT(*) FROM CTE_Result AS CTE_COUNT WHERE CTE_COUNT.NOME_FUNCIONARIO = CTE_Result.NOME_FUNCIONARIO) AS NOME_COUNT

FROM CTE_Result

ORDER BY CHAPA DESC

bottom of page