Ten post pomógł mi dzisiaj, ale musiałem poeksperymentować, aby zrobić to, czego potrzebowałem. Oto co znalazłem.
Jeśli chcesz dodać bardziej złożone okresy, na przykład 1 rok i 15 dni, możesz użyć
UPDATE tablename SET datefieldname = curdate()+ INTERVAL 15 DAY + INTERVAL 1 YEAR;
Okazało się, że użycie DATE_ADDnie pozwala na dodanie więcej niż jednego interwału. I nie ma słowa kluczowego interwał YEAR_DAYS, chociaż są inne, które łączą okresy. Jeśli dodajesz czasy, użyj now()zamiast curdate().
Odpowiedzi:
Możesz użyć DATE_ADD : (lub ADDDATE z
INTERVAL
)źródło
Ten post pomógł mi dzisiaj, ale musiałem poeksperymentować, aby zrobić to, czego potrzebowałem. Oto co znalazłem.
Jeśli chcesz dodać bardziej złożone okresy, na przykład 1 rok i 15 dni, możesz użyć
Okazało się, że użycie
DATE_ADD
nie pozwala na dodanie więcej niż jednego interwału. I nie ma słowa kluczowego interwał YEAR_DAYS, chociaż są inne, które łączą okresy. Jeśli dodajesz czasy, użyjnow()
zamiastcurdate()
.źródło
Dla wielu typów przedziałów użyj konstrukcji zagnieżdżonej, jak w:
Za aktualizację podanej daty w kolumnie
date
do 1 roku + 1 dzieńźródło