Usuário com melhor resposta
Procedure ou VIEW

Pergunta
-
Bom dia,
Preciso fazer uma consulta de datas do tipo COUNT
Por exemplo em uma tabela eu tenho varias datas de logon e por varias pessoas no meu caso eu preciso buscar a quantidade de logon de Hoje, Ontem e Anteontem.
Alguém consegue me ajudar ?
Obrigado
Respostas
-
Olá Leandro, por acaso seria isso? Dá uma olhada no exemplo abaixo:
CREATE
PROCEDURE [dbo].[sp_ConsultarPresencaDia]@dia
int,@mes
intAS
BEGIN
Declare
@Hoje int,@Ontem
int,@AnteOntem
intSELECT
@Hoje = COUNT(horaLogon)FROM
HistoricoUsuarioWHERE
DAY(horaLogon) = @dia AND MONTH(horaLogon) = @mesSELECT
@Ontem = COUNT(horaLogon)FROM
HistoricoUsuarioWHERE
DAY(horaLogon)-1 = @dia-1 AND MONTH(horaLogon) = @mesSELECT
@AnteOntem = COUNT(horaLogon)FROM
HistoricoUsuarioWHERE
DAY(horaLogon)-2 = @dia-2 AND MONTH(horaLogon) = @mesSelect
@Hoje,@Ontem,@AnteOntemEND
Espero ter ajudado
Todas as Respostas
-
Bom dia Leandro
Você pode tanto criar uma procedure , view ou uma FUNCTION que é o que considero mais adequado segue abaixo um exemplo:
CREATE FUNCTION FN_RETORNALOGON(@Data_Inicial SmallDateTime,@Data_Final SmallDateTime) RETURNS TABLE
AS RETURN(SELECT * FROM SUATABELA WHERE CAMPODATA Between @Data_Inicial AND @Data_Final)Você utiliza da seguinte forma: SELECT * FROM FN_RetornaLogon('01/01/2007','01/02/2007')
Espero ter ajudado
-
-
Anderson no caso estou fazendo assim assim eu tenho a contagem do dia que for solicitado pela aplicação dai quando a aplicação pedir a contagem do dia 13/02 tabem devo retornar o dia 12/02 e 11/02 será que tem como fazer isso?
CREATE
PROCEDURE [dbo].[sp_ConsultarPresencaDia]@dia
int,@mes
intAS
BEGIN
SELECT COUNT(horaLogon) FROM HistoricoUsuario WHERE DAY(horaLogon) = @dia AND MONTH(horaLogon) = @mesEND
Obrigado
Leandro
-
Olá Leandro, por acaso seria isso? Dá uma olhada no exemplo abaixo:
CREATE
PROCEDURE [dbo].[sp_ConsultarPresencaDia]@dia
int,@mes
intAS
BEGIN
Declare
@Hoje int,@Ontem
int,@AnteOntem
intSELECT
@Hoje = COUNT(horaLogon)FROM
HistoricoUsuarioWHERE
DAY(horaLogon) = @dia AND MONTH(horaLogon) = @mesSELECT
@Ontem = COUNT(horaLogon)FROM
HistoricoUsuarioWHERE
DAY(horaLogon)-1 = @dia-1 AND MONTH(horaLogon) = @mesSELECT
@AnteOntem = COUNT(horaLogon)FROM
HistoricoUsuarioWHERE
DAY(horaLogon)-2 = @dia-2 AND MONTH(horaLogon) = @mesSelect
@Hoje,@Ontem,@AnteOntemEND
Espero ter ajudado
-
-