Olá, sou novo aqui e em SQL Server, estou com um problema para buscar um resultado.
Caso hoje seja segunda, trazer as instalações dos últimos 3 dias (sexta, sábado e domingo), caso não seja, trazer só os de ontem, tentei da forma abaixo e muitas outras e não consegui, desde já agradeço.
SELECT codigoCliente AS [CÓD], CpfCnpj AS [CPF/CNPJ]
,NomeFantasia as [NOME FANTASIA]
,UPPER(NomeContato) as [NOME DE CONTATO]
,CASE WHEN CLI.DDDCelular IS NULL THEN 'NÃO TEM' ELSE DDDCelular END AS [DDD CEL]
,CASE WHEN Celular IS NULL THEN 'NÃO TEM' ELSE Celular END AS CELULAR
,CASE WHEN DDDTelefone IS NULL THEN 'NÃO TEM' ELSE DDDTelefone END AS [DDD TEL]
,CASE WHEN Telefone IS NULL THEN 'NÃO TEM' ELSE Telefone END AS TELEFONE
,DataInstalacao AS [INSTALAÇÃO]
,DATEPART(weekday,DataInstalacao) as [DIASEMANA]
,UPPER(Departamento) AS [DEPTO CAD]
,upper(UsuarioCadastro) as [CADASTRADO POR]
,CASE WHEN UPPER(EMAIL) IS NULL THEN 'NÃO TEM EMAIL' ELSE UPPER(EMAIL) END AS EMAIL
FROM CLIENTE
WHERE
(CASE WHEN (DATEPART(weekday,GETDATE()) = '2' THEN
DATEPART(DAY, DataInstalacao) >= DATEPART(DAY, GETDATE()-3)
ELSE
DATEPART(DAY, DataInstalacao) = DATEPART(DAY, GETDATE()-1)
END)
AND MONTH(DataInstalacao) = MONTH(GETDATE())
AND YEAR(DataInstalacao) = YEAR(GETDATE())
AND Situacao = 'MAQUINA INSTALADA'