Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Oracle DateTime w klauzuli Where?

Tak:TIME_CREATED zawiera datę i godzinę . Użyj TRUNC rozebrać czas:

SELECT EMP_NAME, DEPT
FROM EMPLOYEE
WHERE TRUNC(TIME_CREATED) = TO_DATE('26/JAN/2011','dd/mon/yyyy')

AKTUALIZACJA:
Jak zauważył Dave Costa w poniższym komentarzu, uniemożliwi to Oracle korzystanie z indeksu kolumny TIME_CREATED jeśli istnieje. Alternatywnym podejściem bez tego problemu jest:

SELECT EMP_NAME, DEPT
FROM EMPLOYEE
WHERE TIME_CREATED >= TO_DATE('26/JAN/2011','dd/mon/yyyy') 
      AND TIME_CREATED < TO_DATE('26/JAN/2011','dd/mon/yyyy') + 1


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak wypełnić tabelę kalendarza w Oracle?

  2. Dodaj zbiorczo brakujące dane z poprzedniego miesiąca lub roku

  3. Oracle sql do zliczania wystąpień różnych wartości w jednej kolumnie

  4. Ukośnik czy nie ukośnik?

  5. Wyzwanie testowania bazy danych Oracle — Porównaj dane schematu