Non proprio, la DATE
il tipo di dati non ha un formato; è archiviato internamente in tabelle come 7-byte (l'anno è 2 byte e mese, giorno, ora, minuti e secondi sono 1 byte ciascuno). L'interfaccia utente che stai utilizzando (ad esempio SQL/PLUS, SQL Developer, Toad, ecc.) gestirà la formattazione di un DATE
dal suo formato binario a un formato leggibile dall'uomo. In SQL/Plus (o SQL Developer) questo formato è basato su NLS_DATE_FORMAT
parametro di sessione
.
Se il DATE
viene inserito utilizzando solo il giorno, il mese e l'anno, quindi la componente temporale (probabilmente) verrà impostata su 00:00:00
(mezzanotte).
Supponendo che la componente temporale per la tua colonna DOJ sia sempre mezzanotte, allora:
SELECT COUNT(*)
FROM students
WHERE doj = TO_DATE( your_param, 'dd/mm/yyyy' )
Se non è sempre mezzanotte, allora:
SELECT COUNT(*)
FROM students
WHERE TRUNC( doj ) = TO_DATE( your_param, 'dd/mm/yyyy' )
oppure:
SELECT COUNT(*)
FROM students
WHERE doj >= TO_DATE( your_param, 'dd/mm/yyyy' )
AND doj < TO_DATE( your_param, 'dd/mm/yyyy' ) + INTERVAL '1' DAY