Array
(
)

Seleção de data e hora

Marcelo.l
   - 23 set 2005

Olá,

Tenho alguns relatórios em que preciso selecionar registros por periodo de data e hora.
Em algumas tabelas estou usando o campo TimeStamp para guardar a data e hora em que o registro foi criado.
Como fazer para selecionar um determinado período de data e, dentro deste período, um determinado período de horas.

No Firebird podemos fazer um CAST. Ex:

#CódigoSELECT
CAST(DATA_HORA AS DATE) AS MINHA_DATA,
CAST(DATA_HORA AS TIME) AS MINHA_HORA

FROM
LOG_SYSTEM

WHERE
CAST(DATA_HORA AS DATE) BETWEEN ´09/01/2005´ AND ´09/30/2005´
AND CAST(DATA_HORA AS TIME) BETWEEN ´12:00´ AND ´18:30´


Isto gera uma tabela com um campo data e outro campo hora com os registros encontrados entre o dia 01/09/2005 à 30/09/2005 entre 12:00 hs e 18:30 hs. O problema é que o SQL Server não tem tipos de campos separados para data e hora.

Como fazer algo similar no SQL Server???

Desde já agradeço.

Emerson
   - 23 set 2005

leia sobre a função DatePart