W MySQL możesz użyć DATE_ADD()
funkcja dodawania określonej ilości czasu do daty. Na przykład możesz go użyć, aby dodać 5 dni do podanej daty. Możesz określić, czy dodać dni, tygodnie, miesiące, kwartały, lata itp. Możesz również dodać wartość czasu, taką jak sekundy, mikrosekundy itp.
Ten artykuł zawiera przykłady pokazujące, jak DATE_ADD()
funkcja działa.
Składnia
Składnia wygląda tak:
DATE_ADD(date,INTERVAL expr unit)
Przykład 1 – Podstawowe użycie
Oto przykład użycia.
SELECT DATE_ADD('2020-10-01', INTERVAL 20 DAY) AS Result;
Wynik:
+------------+ | Result | +------------+ | 2020-10-21 | +------------+
Ten przykład dodaje 20 dni do daty podanej w pierwszym argumencie.
Przykład 2 – Inne jednostki daty
Możesz określić jednostki w dniach, tygodniach, miesiącach, latach itp. Oto kilka przykładów.
SELECT '2020-10-01' AS 'Start Date', DATE_ADD('2020-10-01', INTERVAL 2 WEEK) AS '+2 Weeks', DATE_ADD('2020-10-01', INTERVAL 2 MONTH) AS '+2 Months', DATE_ADD('2020-10-01', INTERVAL 2 QUARTER) AS '+2 Quarters', DATE_ADD('2020-10-01', INTERVAL 2 YEAR) AS '+2 Years';
Wynik:
+------------+------------+------------+-------------+------------+ | Start Date | +2 Weeks | +2 Months | +2 Quarters | +2 Years | +------------+------------+------------+-------------+------------+ | 2020-10-01 | 2020-10-15 | 2020-12-01 | 2021-04-01 | 2022-10-01 | +------------+------------+------------+-------------+------------+
Przykład 3 – Jednostki czasu
Możesz również dodać jednostki czasu do wartości daty/godziny. Oto przykład.
SELECT DATE_ADD('2020-10-01 01:00:00', INTERVAL 10 HOUR) AS Result;
Wynik:
+---------------------+ | Result | +---------------------+ | 2020-10-01 11:00:00 | +---------------------+
Możesz określić wiele jednostek jednocześnie. Na przykład możesz określić godziny i minuty. W ten sposób.
SELECT DATE_ADD('2020-10-01 01:00:00', INTERVAL '1:30' HOUR_MINUTE) AS Result;
Wynik:
+---------------------+ | Result | +---------------------+ | 2020-10-01 02:30:00 | +---------------------+
Oczekiwane wartości
Poniższa tabela przedstawia prawidłowe wartości jednostek i ich oczekiwany format.
unit Wartość | Oczekiwano expr Format |
---|---|
MIKROSEKUNDA | MIKROSEKUNDY |
DRUGA | SEKUND |
MINUTA | MINUT |
GODZINA | GODZINY |
DZIEŃ | DNI |
TYDZIEŃ | TYGODNIE |
MIESIĄC | MIESIĄCE |
KWARTAŁ | KWARTAŁ |
ROK | LAT |
SECOND_MICROSECOND | „SEKUND.MIKROSEKUNDY” |
MINUTE_MICROSECOND | „MINUTY:SEKUND.MIKROSEKUNDY” |
MINUTE_SECOND | „MINUTY:SEKUNDY” |
HOUR_MICROSECOND | „GODZINY:MINUTY:SEKUND.MIKROSEKUNDY” |
HOUR_SECOND | „GODZINY:MINUTY:SEKUNDY” |
GODZINA_MINUTA | „GODZINY:MINUTY” |
DAY_MICROSECOND | „DNI GODZINY:MINUTY:SEKUND.MIKROSEKUNDY” |
DAY_SECOND | „DNI GODZINY:MINUTY:SEKUNDY” |
DAY_MINUTE | „DNI GODZINY:MINUTY” |
DAY_HOUR | „DNI GODZINY” |
ROK_MIESIĄC | „LATA-MIESIĄCE” |
Możesz też użyć funkcji ADDDATE()
funkcja do zrobienia tego samego (jest synonimem DATE_ADD()
funkcji przy użyciu tej samej składni). Ponadto składnia ADDDATE()
ma drugą formę, która jest skróconą metodą dodawania określonej liczby dni do daty. Aby uzyskać więcej informacji, zobacz ADDDATE() Przykłady w MySQL.