Itβs a little incomprehensible from your statement, but are you trying to find the next Saturday?
select date_add(now(), interval 7-dayofweek(now()) day);
Which, unfortunately, will return today if you are on Saturday, so the sequence will be as follows:
SET @OFFSET = 7-dayofweek(now()); SET @OFFSET = IF(@OFFSET = 0, 7, @OFFSET); select date_add(now(), interval @OFFSET day);
which can be combined into one:
select date_add(now(), interval IF(7-dayofweek(now()) = 0, 7, 7-dayofweek(now())) day) as next;
source share