Niet helemaal, de DATE
datatype heeft geen formaat; het wordt intern in tabellen opgeslagen als 7-bytes (jaar is 2 bytes en maand, dag, uur, minuut en seconde zijn elk 1 byte). De gebruikersinterface die u gebruikt (d.w.z. SQL/PLUS, SQL Developer, Toad, enz.) zal de opmaak van een DATE
afhandelen van het binaire formaat naar een voor mensen leesbaar formaat. In SQL/Plus (of SQL Developer) is dit formaat gebaseerd op de NLS_DATE_FORMAT
sessieparameter
.
Als de DATE
wordt ingevoerd met alleen de dag, maand en jaar, dan wordt de tijdcomponent (waarschijnlijk) ingesteld op 00:00:00
(middernacht).
Ervan uitgaande dat de tijdcomponent voor uw DOJ-kolom altijd middernacht is, dan:
SELECT COUNT(*)
FROM students
WHERE doj = TO_DATE( your_param, 'dd/mm/yyyy' )
Als het niet altijd middernacht is, dan:
SELECT COUNT(*)
FROM students
WHERE TRUNC( doj ) = TO_DATE( your_param, 'dd/mm/yyyy' )
of:
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