youngji
youngji

Reputation: 15

When I use date_add in where is not working, why?

SELECT * 
FROM PATIENT
WHERE PATIENTNUM = (SELECT PATIENTNUM
                     FROM CONSULTATION
                     WHERE CONSULTATIONDATE =  
                     (SELECT DATE_ADD(curdate(), INTERVAL 1 DAY) AS DAYTOM); 

This is not working.

But when I insert only this

SELECT DATE_ADD(curdate(), INTERVAL 1 DAY) AS DAYTOM

its working...

Why??

Upvotes: 0

Views: 1289

Answers (2)

geoandri
geoandri

Reputation: 2428

I think the correct way is

  SELECT * 
  FROM PATIENT
   WHERE PATIENTNUM IN (SELECT PATIENTNUM
                 FROM CONSULTATION
                 WHERE CONSULTATIONDATE IN  (SELECT DATE_ADD(curdate(), INTERVAL 1 DAY)             AS   DAYTOM)); 

Upvotes: 1

Deep
Deep

Reputation: 3202

You missed one bracket?

SELECT * 
FROM PATIENT
WHERE PATIENTNUM = (SELECT PATIENTNUM
                     FROM CONSULTATION
                     WHERE CONSULTATIONDATE =  (SELECT DATE_ADD(curdate(), INTERVAL 1 DAY) AS DAYTOM)); 

Upvotes: 0

Related Questions