Preciso de uma consulta para extrair registros de uma tabela do SQL Server com base na data máxima na InsertDTS
coluna e a data não deve ser incluÃda na saÃda.
A InsertDTS
coluna é definida como Datetime
. Preciso que ela puxe tudo com a data máxima, mas ignore o tempo, já que os registros podem ser carregados ao longo do dia. Tenho a consulta abaixo, mas ela está puxando apenas registros com a data e hora mais recentes.
SELECT
[Payer],
[File],
[Data_Rows],
[Amt_Billed],
[Amt_Paid]
FROM
[Customer].[dbo].[Billing]
WHERE
InsertDTS = (SELECT MAX(InsertDTS)
FROM [Customer].[dbo].[Billing])
Tentei usar a CAST
na WHERE
cláusula, mas não consegui fazer funcionar.
De uma perspectiva de desempenho, é melhor não executar funções em colunas na sua cláusula where porque isso torna a consulta inargável, ou seja, incapaz de usar Ãndices. Portanto, é melhor usar uma janela de data em vez de uma data especÃfica, por exemplo
e funciona igualmente bem com elenco, por exemplo
Converta
DATETIME
paraDATE
ignorar a hora do dia.