Oracle: SQL seleciona data com timestamp
Eu tenho os seguintes dados:
SQL> select * from booking_session;
BK_ID|BK_DATE
-----|-------------------------
1|18-MAR-12 10.00.00.000000
2|18-MAR-12 10.25.00.000000
3|18-MAR-12 10.30.00.000000
4|18-MAR-12 10.35.00.000000
5|18-MAR-12 10.40.00.000000
Estou tentando escrever umsql
consulta que seleciona todos os registros que correspondem a uma determinada data, no entanto, estou usando o registro de data e hora para oBK_DATE
campo e não importa o que eu tente minha consulta não produz resultados.
SQL: Eu tentei as seguintes consultas, mas elas não produzem resultados
1
select *
from booking_session
where bk_date = to_date('18-03-2012', 'dd-mm-yyyy');
2
select *
from booking_session
where bk_date = to_timestamp('18-03-2012', 'dd-mm-yyyy');
3
select *
from booking_session
where bk_date = to_date('18-MAR-2012', 'dd-mm-yyyy');
Só funciona quando eu definir o valor de data inteiro como;
select *
from booking_session
WHERE bk_date = '18-MAR-12 11.00.00.000000';
CREATE TABLE BOOKING_SESSION(
BK_ID NUMBER NOT NULL,
BK_DATE TIMESTAMP,
BK_BOOKER NUMBER,
BK_CUSTOMER NUMBER,
BK_TREATMENT NUMBER,
T_SESSION_DATETIME TIMESTAMP,
STAFFAPPOINTED NUMBER,
BK_ROOM NUMBER
);
INSERT INTO BOOKING_SESSION VALUES (
1,
TO_TIMESTAMP('18/03/2012 10:00', 'DD/MM/YYYY HH24:MI'),
1,
1,
1,
TO_TIMESTAMP('20/03/2012 11:00', 'DD/MM/YYYY HH24:MI'),2,1
);