Förutsatt date_enter är ett DATE fält:
Select * From Customer_Rooms CuRo
Where CuRo.Date_Enter >= trunc(sysdate)
And CuRo.Date_Enter < trunc(sysdate) + 1;
trunc() funktion tar bort tidsdelen som standard, så trunc(sysdate) ger dig midnatt i morse.
Om du särskilt vill hålla dig till between , och du har en DATE inte en TIMESTAMP , du kan göra:
Select * From Customer_Rooms CuRo
Where CuRo.Date_Enter between trunc(sysdate)
And trunc(sysdate) + interval '1' day - interval '1' second;
between är inkluderande, så om du inte tar ledigt en sekund kan du potentiellt plocka upp skivor från exakt midnatt ikväll; så detta genererar den 23:59:59 tiden du letade efter i din ursprungliga fråga. Men med >= och < är lite tydligare och mer explicit enligt mig i alla fall.
Om du är säker på att du ändå inte kan ha datum senare än idag, lägger den övre gränsen egentligen inte till någonting, och du skulle få samma resultat med bara:
Select * From Customer_Rooms CuRo
Where CuRo.Date_Enter >= trunc(sysdate);
Du vill inte använda trunc eller to_char på date_enter kolumn dock; att använda någon funktion förhindrar att ett index på den kolumnen används, vilket är anledningen till att din fråga med to_char var för långsam.