mysql - Conditional Data fetch for a specific time window with SQL IF Statement -


i have below scenario. have table(name mytab1) in mysql database(using workbench community 6.3) consists of columns id, message , incidentdate(which date-time type). mytab1 can contain more 10k data. requirement fetch data below condition :

edit : if{incidentdate < (current_systime - 2 hours)} fetch records table.

else fetch record incidentdate < (current_systime - 5 minutes).

i have used below syntax same :

select if((select timestampdiff(minute,incidentdate,now()) mytab1)>120, (select message mytab1), (select message mytab1 incidentdate < date_add(now(), interval -5 minutes)))  message; 

now, first instance table mytab1 contains below data :

id, message, incidentdate ------------------------- a01, incident_01, 2016-02-08 20:00:30 a02, incident_02, 2016-02-08 20:10:20 

conditional sql query should able fetch above 2 data(as beyond 2 hours of current system time i.e. 2016-02-09 01:00:10). in second instance new data(one row example) has entered in mytab1 table , mytab1 looks below :

id, message, incidentdate ------------------------- a01, incident_01, 2016-02-08 20:00:30 a02, incident_02, 2016-02-08 20:10:20 a03, incident_03, 2016-02-09 00:55:30 

and new data conditional sql query should able fetch data complete third row having message "incident_03".

with above mentioned syntax of sql query not able fetch data if there multiple row in mytab1 , not working if want fetch columns of mytab1 table. kindly conditional sql syntax requirement please.


Comments