user3400389
user3400389

Reputation: 367

All records within 3 month access WHERE clause on Date PHP

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

Answers (2)

Mureinik
Mureinik

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

Maheswaran Ravisankar
Maheswaran Ravisankar

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

Related Questions