Ikke helt, DATE
data-type har ikke et format; den er gemt internt i tabeller som 7-bytes (år er 2 byte og måned, dag, time, minut og sekund er 1 byte hver). Den brugergrænseflade du bruger (dvs. SQL/PLUS, SQL Developer, Toad osv.) vil håndtere formateringen af en DATE
fra dets binære format til et menneskeligt læsbart format. I SQL/Plus (eller SQL Developer) er dette format baseret på NLS_DATE_FORMAT
sessionsparameter
.
Hvis DATE
er indtastet ved kun at bruge dag, måned og år, vil tidskomponenten (sandsynligvis) blive sat til 00:00:00
(midnat).
Forudsat at tidskomponenten for din DOJ-kolonne altid er midnat, så:
SELECT COUNT(*)
FROM students
WHERE doj = TO_DATE( your_param, 'dd/mm/yyyy' )
Hvis det ikke altid er midnat, så:
SELECT COUNT(*)
FROM students
WHERE TRUNC( doj ) = TO_DATE( your_param, 'dd/mm/yyyy' )
eller:
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