Reputation: 367
I want to do a Quater
wise search on the records store in the database. The problem is that i don't know how to use BETWEEN
in date. Any help would be appreciated.
SELECT * FROM ACED
INNER JOIN RACE
ON ACED.RACE_NO=RACE.RACE_NO
WHERE R_DATE
BETWEEN
TO_CHAR(TO_DATE(R_DATE, 'DD-MON-YYYY'), 'MON-YY') = 'JAN-14'
AND
TO_CHAR(TO_DATE(R_DATE, 'DD-MON-YYYY'), 'MON-YY') = 'MAR-14'
Upvotes: 1
Views: 144
Reputation: 311163
between
works in the same fashion for dates, numbers, strings, etc - You just need to make sure you pass date
arguments and not character arguments (which will cause the operator to do a lexicographical comparison). E.g.:
SELECT *
FROM aced
INNER JOIN race ON aced.race_no = race.race_no
WHERE r_date BETWEEN TO_DATE('01-14','mm-yy') AND
TO_DATE('03-14','mm-yy')
Upvotes: 1
Reputation: 17920
SELECT * FROM ACED
INNER JOIN RACE
ON ACED.RACE_NO=RACE.RACE_NO
WHERE
TO_CHAR(R_DATE,'Q') = 1;
Q
in format model gives you the quarter of the year. Jan to march is 1st Quarter. and so on.
Upvotes: 2