Dieser Abschnitt beschreibt die Funktionen, die zur Manipulation von zeitbezogenen Werten verwendet werden können. Eine Beschreibung der Wertebereiche für Datums- und Uhrzeittypen und der gültigen Formate, in denen Werte angegeben werden können, finden Sie in Abschnitt 11.3, „Datums- und Zeittypen“.
      Es folgt ein Beispiel, welches Datumsfunktionen verwendet. Die
      folgende Abfrage wählt alle Datensätze aus, die einen
      date_col-Wert haben, der in den letzten
      30 Tagen liegt:
    
mysql>SELECT->somethingFROMtbl_nameWHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) <=date_col;
Beachten Sie, dass die Abfrage auch Datensätze mit Daten auswählt, die in der Zukunft liegen.
      Funktionen, die Datumswerte erwarten, akzeptieren normalerweise
      auch DATETIME-Werte und ignorieren dabei den
      Uhrzeitbestandteil. Ähnlich akzeptieren Funktionen, die Zeitwerte
      erwarten, normalerweise auch DATETIME-Werte und
      ignorieren den Datumsbestandteil.
    
      Funktionen, die das aktuelle Datum oder die Uhrzeit zurückgeben,
      werden nur einmal pro Abfrage ausgewertet, nämlich beim Start der
      Abfrageausführung. Das bedeutet, dass mehrere Referenzierungen
      einer Funktion wie NOW() in einer Abfrage immer
      zum selben Ergebnis führen (für unsere Zwecke enthält eine
      einzelne Abfrage auch einen Aufruf einer gespeicherten Routine
      oder eines Triggers sowie alle Subroutinen, die von dieser Routine
      oder diesem Trigger aufgerufen werden). Dieses Prinzip gilt auch
      für CURDATE(), CURTIME(),
      UTC_DATE(), UTC_TIME(),
      UTC_TIMESTAMP() und für alle zugehörigen
      Synonyme.
    
      Die Funktionen CURRENT_TIMESTAMP(),
      CURRENT_TIME(),
      CURRENT_DATE() und
      FROM_UNIXTIME() geben Werte in der aktuellen
      Zeitzone der Verbindung zurück, die als Wert der Systemvariablen
      time_zone verfügbar ist. Ferner setzt
      UNIX_TIMESTAMP() voraus, dass sein Argument ein
      DATETIME-Wert in der aktuellen Zeitzone ist.
      Siehe auch Abschnitt 5.11.8, „Zeitzonen-Unterstützung des MySQL-Servers“.
    
      Einige Datumsfunktionen können mit „Nulldaten“ oder
      unvollständigen Daten wie '2001-11-00'
      verwendet werden, während dies bei anderen nicht möglich ist.
      Funktionen, die Teile von Datumsangaben extrahieren, arbeiten
      meist auch mit unvollständigen Daten. Zum Beispiel:
    
mysql> SELECT DAYOFMONTH('2001-11-00'), MONTH('2005-00-00');
        -> 0, 0
      Andere Funktionen erwarten vollständige Daten und geben
      NULL zurück, wenn unvollständige Daten
      übergeben werden. Hierzu gehören Funktionen, die
      Datumsberechnungen durchführen oder Teile von Datumsangaben Namen
      zuordnen. Zum Beispiel:
    
mysql>SELECT DATE_ADD('2006-05-00',INTERVAL 1 DAY);-> NULL mysql>SELECT DAYNAME('2006-05-00');-> NULL
          
          ADDDATE(,
          date,INTERVAL
          expr
          type)ADDDATE(
        expr,days)
          Wenn mit der Form INTERVAL für das zweite
          Argument aufgerufen, ist ADDDATE() ein
          Synonym von DATE_ADD(). Die zugehörige
          Funktion SUBDATE() ist ein Synonym für
          DATE_SUB(). Weitere Informationen zum
          Argument INTERVAL finden Sie in der
          Beschreibung zu DATE_ADD().
        
mysql>SELECT DATE_ADD('1998-01-02', INTERVAL 31 DAY);-> '1998-02-02' mysql>SELECT ADDDATE('1998-01-02', INTERVAL 31 DAY);-> '1998-02-02'
          Wenn mit der Form days für das
          zweite Argument aufgerufen, wird es von MySQL als ganzzahlige
          Anzahl von Tagen behandelt, die
          expr hinzugefügt wird.
        
mysql> SELECT ADDDATE('1998-01-02', 31);
        -> '1998-02-02'
          ADDTIME() fügt
          expr2
          expr hinzu und gibt das Ergebnis
          zurück. expr ist eine Zeitangabe
          oder ein DATETIME-Wert,
          expr2 eine Zeitangabe.
        
mysql>SELECT ADDTIME('1997-12-31 23:59:59.999999',->'1 1:1:1.000002');-> '1998-01-02 01:01:01.000001' mysql>SELECT ADDTIME('01:00:00.999999', '02:00:00.999998');-> '03:00:01.999997'
          CONVERT_TZ() wandelt einen
          DATETIME-Wert dt
          von der angegebenen Ausgangszeitzone
          from_tz in die Zielzeitzone
          to_tz um und gibt das Ergebnis
          zurück. Zeitzonen werden wie in
          Abschnitt 5.11.8, „Zeitzonen-Unterstützung des MySQL-Servers“, beschrieben angegeben.
          Die Funktion gibt NULL zurück, wenn die
          Argumente ungültig sind.
        
          Fiele der Wert durch die Konvertierung aus
          from_tz in UTC außerhalb des vom
          Typ TIMESTAMP unterstützten Bereichs, dann
          erfolgt keine Konvertierung. Der für
          TIMESTAMP gültige Bereich ist in
          Abschnitt 11.1.2, „Überblick über Datums- und Zeittypen“, beschrieben.
        
mysql>SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET');-> '2004-01-01 13:00:00' mysql>SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00');-> '2004-01-01 22:00:00'
          Hinweis: Wenn Sie benannte
          Zeitzonen wie 'MET' oder
          'Europe/Moscow' verwenden wollen, müssen
          die Zeitzonentabellen korrekt konfiguriert sein. Eine
          Anleitung finden Sie in Abschnitt 5.11.8, „Zeitzonen-Unterstützung des MySQL-Servers“.
        
          Gibt das aktuelle Datum als Wert in den Formaten
          'YYYY-MM-DD' oder
          YYYYMMDD aus. Das Ausgabeformat hängt
          davon ab, ob die Funktion in einem String- oder einem
          numerischen Kontext verwendet wird.
        
mysql>SELECT CURDATE();-> '1997-12-15' mysql>SELECT CURDATE() + 0;-> 19971215
          CURRENT_DATE und
          CURRENT_DATE() sind Synonyme von
          CURDATE().
        
          Gibt die aktuelle Uhrzeit als Wert in den Formaten
          'HH:MM:SS' oder HHMMSS
          aus. Das Ausgabeformat hängt davon ab, ob die Funktion in
          einem String- oder einem numerischen Kontext verwendet wird.
        
mysql>SELECT CURTIME();-> '23:50:26' mysql>SELECT CURTIME() + 0;-> 235026
          CURRENT_TIME und
          CURRENT_TIME() sind Synonyme von
          CURTIME().
        
          
          CURRENT_TIMESTAMP,
          CURRENT_TIMESTAMP()
        
          CURRENT_TIMESTAMP und
          CURRENT_TIMESTAMP() sind Synonyme von
          NOW().
        
          Extrahiert den Datumsteil aus dem DATE-
          oder DATETIME-Ausdruck
          expr.
        
mysql> SELECT DATE('2003-12-31 01:02:03');
        -> '2003-12-31'
          DATEDIFF() gibt die Anzahl der Tage
          zwischen dem Startdatum expr und
          dem Enddatum expr2 zurück.
          expr und
          expr2 sind DATE-
          oder DATETIME-Ausdrücke. Nur die
          Datumsanteile der Werte werden in der Berechnung verwendet.
        
mysql>SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');-> 1 mysql>SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31');-> -31
          
          
          DATE_ADD(,
          date,INTERVAL
          expr
          type)DATE_SUB(
        date,INTERVAL
          expr
          type)
          Diese Funktionen führen Datumsberechnungen durch.
          date ist ein
          DATETIME- oder
          DATE-Wert, der das Startdatum angibt.
          expr ist ein Ausdruck, der den vom
          Startdatum hinzuzufügenden oder abzuziehenden Intervallwert
          angibt. expr ist dabei ein String
          und kann bei negativen Intervallen mit einem
          ‘-’ beginnen.
          type ist ein Schlüsselwort, das
          angibt, wie der Ausdruck zu interpretieren ist.
        
          Das Schlüsselwort INTERVAL und die Angabe
          type unterscheiden die
          Groß-/Kleinschreibung nicht.
        
          Die folgende Tabelle zeigt die erwartete Form des Arguments
          expr für die einzelnen
          type-Werte.
        
| typeWert | Erwartetes expr-Format | 
| MICROSECOND | MICROSECONDS | 
| SECOND | SECONDS | 
| MINUTE | MINUTES | 
| HOUR | HOURS | 
| DAY | DAYS | 
| WEEK | WEEKS | 
| MONTH | MONTHS | 
| QUARTER | QUARTERS | 
| YEAR | YEARS | 
| SECOND_MICROSECOND | 'SECONDS.MICROSECONDS' | 
| MINUTE_MICROSECOND | 'MINUTES.MICROSECONDS' | 
| MINUTE_SECOND | 'MINUTES:SECONDS' | 
| HOUR_MICROSECOND | 'HOURS.MICROSECONDS' | 
| HOUR_SECOND | 'HOURS:MINUTES:SECONDS' | 
| HOUR_MINUTE | 'HOURS:MINUTES' | 
| DAY_MICROSECOND | 'DAYS.MICROSECONDS' | 
| DAY_SECOND | 'DAYS HOURS:MINUTES:SECONDS' | 
| DAY_MINUTE | 'DAYS HOURS:MINUTES' | 
| DAY_HOUR | 'DAYS HOURS' | 
| YEAR_MONTH | 'YEARS-MONTHS' | 
          MySQL erlaubt die Verwendung beliebiger Interpunktionszeichen
          als Trennzeichen im Format von
          expr. Die in der Tabelle gezeigten
          Trennzeichen sind als Vorschläge aufzufassen. Wenn das
          Argument date ein
          DATE-Wert ist und Ihre Berechnungen nur die
          Teile YEAR, MONTH und
          DAY (also keine uhrzeitbezogenen Teile)
          betreffen, ist das Ergebnis ein DATE-Wert.
          Andernfalls ist das Ergebnis ein
          DATETIME-Wert.
        
          Datumsberechnungen können auch mit
          INTERVAL in Kombination mit den Operatoren
          + und - durchgeführt
          werden:
        
date+ INTERVALexprtypedate- INTERVALexprtype
          INTERVAL  ist auf beiden
          Seiten des Operators expr
          type+ zulässig, wenn der
          Ausdruck auf der jeweils anderen Seite ein
          DATE- oder DATETIME-Wert
          ist. Beim Operator - ist INTERVAL
           nur auf der rechten
          Seite der Gleichung zulässig, da das Abziehen eines
          expr
          typeDATE- oder
          DATETIME-Werts von einem Intervall unsinnig
          wäre.
        
mysql>SELECT '1997-12-31 23:59:59' + INTERVAL 1 SECOND;-> '1998-01-01 00:00:00' mysql>SELECT INTERVAL 1 DAY + '1997-12-31';-> '1998-01-01' mysql>SELECT '1998-01-01' - INTERVAL 1 SECOND;-> '1997-12-31 23:59:59' mysql>SELECT DATE_ADD('1997-12-31 23:59:59',->INTERVAL 1 SECOND);-> '1998-01-01 00:00:00' mysql>SELECT DATE_ADD('1997-12-31 23:59:59',->INTERVAL 1 DAY);-> '1998-01-01 23:59:59' mysql>SELECT DATE_ADD('1997-12-31 23:59:59',->INTERVAL '1:1' MINUTE_SECOND);-> '1998-01-01 00:01:00' mysql>SELECT DATE_SUB('1998-01-01 00:00:00',->INTERVAL '1 1:1:1' DAY_SECOND);-> '1997-12-30 22:58:59' mysql>SELECT DATE_ADD('1998-01-01 00:00:00',->INTERVAL '-1 10' DAY_HOUR);-> '1997-12-30 14:00:00' mysql>SELECT DATE_SUB('1998-01-02', INTERVAL 31 DAY);-> '1997-12-02' mysql>SELECT DATE_ADD('1992-12-31 23:59:59.000002',->INTERVAL '1.999999' SECOND_MICROSECOND);-> '1993-01-01 00:00:01.000001'
          Wenn Sie einen Intervallwert angeben, der zu kurz ist (d. h.
          nicht alle Intervallteile enthält, die aufgrund des
          Schlüsselworts type erwartet
          werden), dann geht MySQL davon aus, dass Sie den linken Teil
          des Intervallwerts weggelassen haben. Geben Sie also etwa als
          type DAY_SECOND an, dann
          wird erwartet, dass der Wert von
          expr Teile für Tage, Stunden,
          Minuten und Sekunden enthält. Bei einer Angabe
          '1:10' setzt MySQL voraus, dass die Teile
          für Tage und Stunden fehlen und der Wert Minuten und Sekunden
          angibt. Anders gesagt, wird '1:10'
          DAY_SECOND als äquivalent zu '1:10'
          MINUTE_SECOND interpretiert. Dies entspricht auch
          der Art und Weise, wie MySQL TIME-Werte als
          verstrichene Zeit (statt als Uhrzeit) auffasst.
        
          Wenn Sie etwas zu einem Datum hinzuaddieren oder davon
          abziehen, das einen Uhrzeitteil enthält, dann wird das
          Ergebnis automatisch in einen DATETIME-Wert
          umgewandelt:
        
mysql>SELECT DATE_ADD('1999-01-01', INTERVAL 1 DAY);-> '1999-01-02' mysql>SELECT DATE_ADD('1999-01-01', INTERVAL 1 HOUR);-> '1999-01-01 01:00:00'
          Wenn Sie MONTH,
          YEAR_MONTH oder YEAR
          hinzuaddieren und das Ergebnis einen Tageswert hat, der
          größer ist als der letzte Tag des neuen Monats, dann wird
          der Tag im neuen Monat auf den letzten Tag gesetzt:
        
mysql> SELECT DATE_ADD('1998-01-30', INTERVAL 1 MONTH);
        -> '1998-02-28'
          Datumsberechnungen erfordern vollständige Datumsangaben;
          unvollständige Angaben wie '2005-07-00'
          oder erheblich fehlerhaft formatierte Werte wie die folgenden
          funktionieren nicht:
        
mysql>SELECT DATE_ADD('2006-07-00', INTERVAL 1 DAY);-> NULL mysql>SELECT '2005-03-32' + INTERVAL 1 MONTH;-> NULL
          Formatiert den Wert date
          entsprechend dem String format.
        
          Die folgenden Konfigurationsangaben können im String
          format verwendet werden. Das
          Zeichen ‘%’ ist vor jede
          Formatangabe zu setzen.
        
| Konfigurationsangabe | Beschreibung | 
| %a | Abgekürzter Name des Wochentags ( Sun...Sat) | 
| %b | Abgekürzter Name des Monats ( Jan...Dec) | 
| %c | Monat, numerisch ( 0...12) | 
| %D | Tag im Monat mit englischem Suffix ( 0th,1st,2nd,3rd, …) | 
| %d | Tag im Monat, numerisch ( 00...31) | 
| %e | Tag im Monat, numerisch ( 0...31) | 
| %f | Mikrosekunden ( 000000...999999) | 
| %H | Stunde ( 00...23) | 
| %h | Stunde ( 01...12) | 
| %I | Stunde ( 01...12) | 
| %i | Minuten, numerisch ( 00...59) | 
| %j | Tag im Jahr ( 001...366) | 
| %k | Stunde ( 0...23) | 
| %l | Stunde ( 1...12) | 
| %M | Monatsname ( January...December) | 
| %m | Monat, numerisch ( 00...12) | 
| %p | AModerPM | 
| %r | Uhrzeit im 12-Stunden-Format ( hh:mm:ssgefolgt vonAModerPM) | 
| %S | Sekunden ( 00...59) | 
| %s | Sekunden ( 00...59) | 
| %T | Uhrzeit im 24-Stunden-Format ( hh:mm:ss) | 
| %U | Woche ( 00...53), wobei Sonntag
                  der erste Tag der Woche ist | 
| %u | Woche ( 00...53), wobei Montag
                  der erste Tag der Woche ist | 
| %V | Woche ( 01...53), wobei Sonntag
                  der erste Tag der Woche ist; wird mit%Xverwendet | 
| %v | Woche ( 01...53), wobei Montag
                  der erste Tag der Woche ist; wird mit%xverwendet | 
| %W | Name des Wochentags ( Sunday...Saturday) | 
| %w | Tag in der Woche ( 0=Sonntag ...6=Sonnabend) | 
| %X | Jahr der Woche, wobei Sonntag der erste Tag der Woche ist, numerisch,
                  vierstellig; wird mit %Vverwendet | 
| %x | Jahr der Woche, wobei Montag der erste Tag der Woche ist, numerisch,
                  vierstellig; wird mit %vverwendet | 
| %Y | Jahr, numerisch, vierstellig | 
| %y | Jahr, numerisch, zweistellig | 
| %% | Literales ‘ %’-Zeichen | 
| % | x, steht für jedes nicht oben aufgeführte
                  ‘x’ | 
          Da MySQL die Speicherung unvollständiger Daten wie
          '2004-00-00' gestattet, beginnen die
          Bereiche für die monats- und tagesbezogenen
          Konfigurationsangaben bei null.
        
mysql>SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');-> 'Saturday October 1997' mysql>SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');-> '22:23:00' mysql>SELECT DATE_FORMAT('1997-10-04 22:23:00','%D %y %a %d %m %b %j'); -> '4th 97 Sat 04 10 Oct 277' mysql>SELECT DATE_FORMAT('1997-10-04 22:23:00','%H %k %I %r %T %S %w'); -> '22 22 10 10:23:00 PM 22:23:00 00 6' mysql>SELECT DATE_FORMAT('1999-01-01', '%X %V');-> '1998 52' mysql>SELECT DATE_FORMAT('2006-06-00', '%d');-> '00'
          DAY() ist ein Synonym für
          DAYOFMONTH().
        
          Gibt den Namen des Wochentags für
          date zurück.
        
mysql> SELECT DAYNAME('1998-02-05');
        -> 'Thursday'
          Gibt den Tag im Monat für date
          zurück. Der Bereich liegt zwischen 0 und
          31.
        
mysql> SELECT DAYOFMONTH('1998-02-03');
        -> 3
          Gibt den Wochentagindex für date
          zurück (1 = Sonntag, 2
          = Montag, …, 7 = Sonnabend). Diese
          Indexwerte entsprechen dem ODBC-Standard.
        
mysql> SELECT DAYOFWEEK('1998-02-03');
        -> 3
          Gibt den Tag im Jahr für date
          zurück. Der Bereich liegt zwischen 1 und
          366.
        
mysql> SELECT DAYOFYEAR('1998-02-03');
        -> 34
          Die Funktion EXTRACT() verwendet dieselben
          Angaben für den Intervalltyp wie
          DATE_ADD() oder
          DATE_SUB(), extrahiert aber Teile des
          Datums, statt daran Berechnungen durchzuführen.
        
mysql>SELECT EXTRACT(YEAR FROM '1999-07-02');-> 1999 mysql>SELECT EXTRACT(YEAR_MONTH FROM '1999-07-02 01:02:03');-> 199907 mysql>SELECT EXTRACT(DAY_MINUTE FROM '1999-07-02 01:02:03');-> 20102 mysql>SELECT EXTRACT(MICROSECOND->FROM '2003-01-02 10:30:00.000123');-> 123
          Gibt für eine Tagesanzahl N den
          DATE-Wert zurück.
        
mysql> SELECT FROM_DAYS(729669);
        -> '1997-10-07'
          Verwenden Sie FROM_DAYS() bei alten
          Datumsangaben mit Vorsicht. Die Funktion ist nicht zur
          Verwendung mit Daten gedacht, die vor der Einführung des
          gregorianischen Kalenders (1582) liegen. Siehe auch
          Abschnitt 12.6, „Welchen Kalender benutzt MySQL?“.
        
          
          FROM_UNIXTIME(,
          unix_timestamp)FROM_UNIXTIME(
        unix_timestamp,format)
          Gibt eine Darstellung des
          unix_timestamp-Arguments als Wert
          in den Formaten 'YYYY-MM-DD HH:MM:SS' oder
          YYYYMMDDHHMMSS zurück. Das Ausgabeformat
          hängt davon ab, ob die Funktion in einem String- oder einem
          numerischen Kontext verwendet wird.
          unix_timestamp ist ein interner
          Zeitstempelwert, der von der Funktion
          UNIX_TIMESTAMP() erzeugt wird.
        
          Wenn format angegeben ist, wird das
          Ergebnis entsprechend dem String
          format formatiert, der so verwendet
          wird wie im Abschnitt zur Funktion
          DATE_FORMAT() beschrieben.
        
mysql>SELECT FROM_UNIXTIME(875996580);-> '1997-10-04 22:23:00' mysql>SELECT FROM_UNIXTIME(875996580) + 0;-> 19971004222300 mysql>SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(),->'%Y %D %M %h:%i:%s %x');-> '2003 6th August 06:22:58 2003'
          Hinweis: Wenn Sie UNIX_TIMESTAMP() und
          FROM_UNIXTIME() zur Konvertierung zwischen
          TIMESTAMP-Werten und Unix-Zeitstempelwerten
          verwenden, ist die Konvertierung verlustbehaftet, weil die
          Zuordnung nicht in beiden Richtungen 1 : 1 erfolgt. Weitere
          Informationen entnehmen Sie der Beschreibung der Funktion
          UNIX_TIMESTAMP().
        
          
          GET_FORMAT(DATE|TIME|DATETIME,
          'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL')
        
          Gibt einen Format-String zurück. Diese Funktion ist praktisch
          in Verbindung mit den Funktionen
          DATE_FORMAT() und
          STR_TO_DATE().
        
          Die zulässigen Werte für das erste und zweite Argument
          ergeben verschiedene Möglichkeiten für Format-Strings. (Die
          Konfigurationsangaben entnehmen Sie der Tabelle in der
          Beschreibung zu DATE_FORMAT().) Das
          ISO-Format verweist auf ISO 9075, nicht auf ISO 8601.
        
| Funktionsaufruf | Ergebnis | 
| GET_FORMAT(DATE,'USA') | '%m.%d.%Y' | 
| GET_FORMAT(DATE,'JIS') | '%Y-%m-%d' | 
| GET_FORMAT(DATE,'ISO') | '%Y-%m-%d' | 
| GET_FORMAT(DATE,'EUR') | '%d.%m.%Y' | 
| GET_FORMAT(DATE,'INTERNAL') | '%Y%m%d' | 
| GET_FORMAT(DATETIME,'USA') | '%Y-%m-%d-%H.%i.%s' | 
| GET_FORMAT(DATETIME,'JIS') | '%Y-%m-%d %H:%i:%s' | 
| GET_FORMAT(DATETIME,'ISO') | '%Y-%m-%d %H:%i:%s' | 
| GET_FORMAT(DATETIME,'EUR') | '%Y-%m-%d-%H.%i.%s' | 
| GET_FORMAT(DATETIME,'INTERNAL') | '%Y%m%d%H%i%s' | 
| GET_FORMAT(TIME,'USA') | '%h:%i:%s %p' | 
| GET_FORMAT(TIME,'JIS') | '%H:%i:%s' | 
| GET_FORMAT(TIME,'ISO') | '%H:%i:%s' | 
| GET_FORMAT(TIME,'EUR') | '%H.%i.%S' | 
| GET_FORMAT(TIME,'INTERNAL') | '%H%i%s' | 
          TIMESTAMP kann auch als erstes Argument
          für GET_FORMAT() verwendet werden. In
          diesem Fall gibt die Funktion dieselben Werte wie bei
          DATETIME zurück.
        
mysql>SELECT DATE_FORMAT('2003-10-03',GET_FORMAT(DATE,'EUR'));-> '03.10.2003' mysql>SELECT STR_TO_DATE('10.31.2003',GET_FORMAT(DATE,'USA'));-> '2003-10-31'
          Gibt die Stundenangabe in time
          zurück. Der Bereich des Rückgabewerts liegt zwischen
          0 und 23 bei
          Tageszeitwerten. Allerdings ist der zulässige Bereich für
          TIME wesentlich größer, d. h.,
          HOUR kann Werte zurückgeben, die größer
          als 23 sind.
        
mysql>SELECT HOUR('10:05:03');-> 10 mysql>SELECT HOUR('272:59:59');-> 272
          Nimmt einen DATE- oder
          DATETIME-Wert entgegen und gibt den
          entsprechenden Wert des letzten Tages des betreffenden Monats
          zurück. Gibt NULL zurück, wenn das
          Argument unzulässig ist.
        
mysql>SELECT LAST_DAY('2003-02-05');-> '2003-02-28' mysql>SELECT LAST_DAY('2004-02-05');-> '2004-02-29' mysql>SELECT LAST_DAY('2004-01-01 01:01:01');-> '2004-01-31' mysql>SELECT LAST_DAY('2003-03-32');-> NULL
          LOCALTIME und
          LOCALTIME() sind Synonyme von
          NOW().
        
          
          LOCALTIMESTAMP,
          LOCALTIMESTAMP()
        
          LOCALTIMESTAMP und
          LOCALTIMESTAMP() sind Synonyme von
          NOW().
        
          Gibt ein Datum zurück, welches auf den übergebenen Werten
          für das Jahr und den Tag im Jahr basiert.
          dayofyear muss größer als 0 sein,
          andernfalls ist das Ergebnis NULL.
        
mysql>SELECT MAKEDATE(2001,31), MAKEDATE(2001,32);-> '2001-01-31', '2001-02-01' mysql>SELECT MAKEDATE(2001,365), MAKEDATE(2004,365);-> '2001-12-31', '2004-12-30' mysql>SELECT MAKEDATE(2001,0);-> NULL
          Gibt einen Zeitwert zurück, der aus den Argumenten
          hour,
          minute und
          second berechnet wird.
        
mysql> SELECT MAKETIME(12,15,30);
        -> '12:15:30'
          Gibt die Anzahl der Mikrosekunden für den übergebenen
          TIME- oder
          DATETIME-Ausdruck
          expr als Zahl im Bereich zwischen
          0 und 999999 zurück.
        
mysql>SELECT MICROSECOND('12:00:00.123456');-> 123456 mysql>SELECT MICROSECOND('1997-12-31 23:59:59.000010');-> 10
          Gibt die Minute für time im
          Bereich zwischen 0 und
          59 zurück.
        
mysql> SELECT MINUTE('98-02-03 10:05:03');
        -> 5
          Gibt den Monat für date im Bereich
          zwischen 0 und 12
          zurück.
        
mysql> SELECT MONTH('1998-02-03');
        -> 2
          Gibt den vollständigen Namen des Monats für
          date zurück.
        
mysql> SELECT MONTHNAME('1998-02-05');
        -> 'February'
          Gibt die aktuellen Werte für Datum und Uhrzeit als Wert in
          den Formaten YYYYMMDDHHMMSS oder
          'YYYY-MM-DD HH:MM:SS' aus. Das
          Ausgabeformat hängt davon ab, ob die Funktion in einem
          String- oder einem numerischen Kontext verwendet wird.
        
mysql>SELECT NOW();-> '1997-12-15 23:50:26' mysql>SELECT NOW() + 0;-> 19971215235026
          Aus einer gespeicherten Routine oder einem Trigger heraus gibt
          NOW() einen Zeitpunkt als Konstante
          zurück, zu dem die Ausführung der Routine bzw. des Triggers
          begann. Hier liegt ein Unterschied zum Verhalten von
          SYSDATE() vor, welches die exakte Zeit
          seiner Ausführung zurückgibt.
        
          Fügt N Monate zum Zeitraum
          P (im Format
          YYMM oder YYYYMM) hinzu.
          Gibt einen Wert im Format YYYYMM zurück.
          Beachten Sie, dass das Zeitraumargument
          P kein
          Datumswert ist.
        
mysql> SELECT PERIOD_ADD(9801,2);
        -> 199803
          Gibt die Anzahl der Monate zwischen den Zeiträumen
          P1 und
          P2 zurück.
          P1 und
          P2 sollten im Format
          YYMM oder YYYYMM
          übergeben werden. Beachten Sie, dass die Zeitraumargumente
          P1 und
          P2 keine
          Datumswerte sind.
        
mysql> SELECT PERIOD_DIFF(9802,199703);
        -> 11
          Gibt das Quartal im Jahr für date
          zurück. Der Bereich liegt zwischen 1 und
          4.
        
mysql> SELECT QUARTER('98-04-01');
        -> 2
          Gibt die Sekunde für time im
          Bereich zwischen 0 und
          59 zurück.
        
mysql> SELECT SECOND('10:05:03');
        -> 3
          Gibt das Argument seconds,
          konvertiert in Stunden, Minuten und Sekunden, als Wert in den
          Formaten 'HH:MM:SS' oder
          HHMMSS aus. Das Ausgabeformat hängt davon
          ab, ob die Funktion in einem String- oder einem numerischen
          Kontext verwendet wird.
        
mysql>SELECT SEC_TO_TIME(2378);-> '00:39:38' mysql>SELECT SEC_TO_TIME(2378) + 0;-> 3938
          Dies ist die Umkehrung der Funktion
          DATE_FORMAT(). Sie nimmt einen String
          str und einen Format-String
          format entgegen.
          STR_TO_DATE() gibt einen
          DATETIME-Wert zurück, wenn der
          Format-String sowohl Datums- als auch Uhrzeitteile enthält,
          oder einen DATE-
          TIME-Wert, wenn der String nur Datums- bzw.
          Uhrzeitteile umfasst.
        
          Die DATE-, TIME- oder
          DATETIME-Werte, die in
          str enthalten sind, sollten in dem
          Format angegeben werden, das durch
          format spezifiziert wurde.
          Informationen zu den in format
          verwendbaren Konfigurationsangaben finden Sie in der
          Beschreibung zur Funktion DATE_FORMAT().
          Wenn str einen unzulässigen
          DATE-, TIME- oder
          DATETIME-Wert enthält, gibt
          STR_TO_DATE() NULL
          zurück. Außerdem erzeugt ein unzulässiger Wert eine
          Warnung.
        
          Die Bereichsprüfung der Teile von Datumswerten erfolgt wie in
          Abschnitt 11.3.1, „Die DATETIME-, DATE- und
        TIMESTAMP-Typen“, beschrieben. Das bedeutet, dass
          „Nulldaten“ oder solche, bei denen Bestandteile 0
          sind, zulässig sind, sofern dem nicht der aktive SQL-Modus
          widerspricht.
        
mysql>SELECT STR_TO_DATE('00/00/0000', '%m/%d/%Y');-> '0000-00-00' mysql>SELECT STR_TO_DATE('04/31/2004', '%m/%d/%Y');-> '2004-04-31'
          
          SUBDATE(,
          date,INTERVAL
          expr
          type)SUBDATE(
        expr,days)
          Wenn mit der Form INTERVAL für das zweite
          Argument aufgerufen wird, ist SUBDATE() ein
          Synonym von DATE_SUB(). Weitere
          Informationen zum Argument INTERVAL finden
          Sie in der Beschreibung zu DATE_ADD().
        
mysql>SELECT DATE_SUB('1998-01-02', INTERVAL 31 DAY);-> '1997-12-02' mysql>SELECT SUBDATE('1998-01-02', INTERVAL 31 DAY);-> '1997-12-02'
          Die zweite Form gestattet die Verwendung eines Integer-Werts
          für days. In solchen Fällen wird
          der Wert als Anzahl von Tagen interpretiert, die vom
          DATE- oder
          DATETIME-Ausdruck
          expr abgezogen werden.
        
mysql> SELECT SUBDATE('1998-01-02 12:00:00', 31);
        -> '1997-12-02 12:00:00'
          Hinweis: Sie können mit dem
          Format "%X%V" keine Konvertierung eines aus
          einer Jahres- und einer Wochenangabe bestehenden Strings in
          ein Datum durchführen, weil diese Kombination nicht eindeutig
          ein Jahr und einen Monat bezeichnet, wenn eine Woche eine
          Monatsgrenze überschreitet. Insofern müssen Sie, wenn Sie
          eine Jahr-/Wochen-Kombination in ein Datum umwandeln wollen,
          auch den Wochentag angeben:
        
mysql> SELECT STR_TO_DATE('200442 Monday', '%X%V %W');
        -> '2004-10-18'
          SUBTIME() zieht
          expr2 von
          expr ab und gibt das Ergebnis
          zurück. expr ist eine
          Uhrzeitangabe oder ein DATETIME-Wert,
          expr2 eine Uhrzeitangabe.
        
mysql>SELECT SUBTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002');-> '1997-12-30 22:58:58.999997' mysql>SELECT SUBTIME('01:00:00.999999', '02:00:00.999998');-> '-00:59:59.999999'
          Gibt die aktuellen Werte für Datum und Uhrzeit als Wert in
          den Formaten YYYYMMDDHHMMSS oder
          'YYYY-MM-DD HH:MM:SS' aus. Das
          Ausgabeformat hängt davon ab, ob die Funktion in einem
          String- oder einem numerischen Kontext verwendet wird.
        
          Aus einer gespeicherten Routine oder einem Trigger heraus gibt
          SYSDATE() die Zeit zurück, zu der sie
          ausgeführt wird. Dies unterscheidet sich vom Verhalten von
          NOW(), welches die Uhrzeit zurückgibt, zu
          der die Ausführung der Routine- oder Trigger-Anweisung
          begann.
        
          Extrahiert den Zeitbestandteil des TIME-
          oder DATETIME-Ausdrucks
          expr und gibt diesen als String
          zurück.
        
mysql>SELECT TIME('2003-12-31 01:02:03');-> '01:02:03' mysql>SELECT TIME('2003-12-31 01:02:03.000123');-> '01:02:03.000123'
          TIMEDIFF() gibt den Zeitraum zwischen der
          Startzeit expr und der Endzeit
          expr2 zurück.
          expr und
          expr2 sind Zeit- oder
          DATETIME-Ausdrücke, müssen aber vom
          selben Typ sein.
        
mysql>SELECT TIMEDIFF('2000:01:01 00:00:00',->'2000:01:01 00:00:00.000001');-> '-00:00:00.000001' mysql>SELECT TIMEDIFF('1997-12-31 23:59:59.000001',->'1997-12-30 01:01:01.000002');-> '46:58:57.999999'
          
          TIMESTAMP(,
          expr)TIMESTAMP(
        expr,expr2)
          Bei nur einem Argument gibt diese Funktion den Datums- oder
          DATETIME-Ausdruck
          expr als
          DATETIME-Wert zurück. Bei zwei Argumenten
          wird der Zeitausdruck expr2 zum
          Datums- oder DATETIME-Ausdruck
          expr hinzugefügt und das Ergebnis
          als DATETIME-Wert zurückgegeben.
        
mysql>SELECT TIMESTAMP('2003-12-31');-> '2003-12-31 00:00:00' mysql>SELECT TIMESTAMP('2003-12-31 12:00:00','12:00:00');-> '2004-01-01 00:00:00'
          
          TIMESTAMPADD(
        interval,int_expr,datetime_expr)
          Fügt den Integer-Ausdruck int_expr
          zum Datums- oder DATETIME-Ausdruck
          datetime_expr hinzu. Die Einheit
          für int_expr wird durch das
          Argument interval angegeben, das einen der
          folgenden Werte haben sollte: FRAC_SECOND,
          SECOND, MINUTE,
          HOUR, DAY,
          WEEK, MONTH,
          QUARTER oder YEAR.
        
          Der interval-Wert kann mithilfe
          eines der angegebenen Schlüsselwörter oder mit dem Präfix
          SQL_TSI_ angegeben werden. Beispielsweise
          sind sowohl DAY als auch
          SQL_TSI_DAY zulässig.
        
mysql>SELECT TIMESTAMPADD(MINUTE,1,'2003-01-02');-> '2003-01-02 00:01:00' mysql>SELECT TIMESTAMPADD(WEEK,1,'2003-01-02');-> '2003-01-09'
          
          TIMESTAMPDIFF(
        interval,datetime_expr1,datetime_expr2)
          Gibt den Unterschied zwischen den Datums- oder
          DATETIME-Ausdrücken
          datetime_expr1 und
          datetime_expr2 zurück. Die Einheit
          für das Ergebnis wird über das Argument
          interval angegeben. Die zulässigen
          Werte für interval entsprechen den
          in der Beschreibung zu TIMESTAMPADD()
          aufgelisteten Optionen.
        
mysql>SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');-> 3 mysql>SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');-> -1
          Wird wie die Funktion DATE_FORMAT()
          verwendet, der String format darf
          aber nur Formatangaben für Stunden, Minuten und Sekunden
          enthalten. Andere Konfigurationsangaben erzeugen einen
          NULL-Wert oder 0.
        
          Wenn der time-Wert einen
          Stundenbestandteil enthält, der größer als
          23 ist, erzeugen die Stundenformatangaben
          %H und %k einen Wert,
          der größer ist als der normale Bereich 0 ...
          23. Die übrigen Konfigurationsangaben für das
          Stundenformat erzeugen den Stundenwert mod 12.
        
mysql> SELECT TIME_FORMAT('100:00:00', '%H %k %h %I %l');
        -> '100 100 04 04 4'
          Gibt das Argument time in Sekunden
          konvertiert zurück.
        
mysql>SELECT TIME_TO_SEC('22:23:00');-> 80580 mysql>SELECT TIME_TO_SEC('00:39:38');-> 2378
          Gibt zu einem Datum date eine
          Anzahl von Tagen zurück. Diese gibt die Anzahl der seit dem
          Jahr 0 bis zu diesem Datum verstrichenen Tage zurück.
        
mysql>SELECT TO_DAYS(950501);-> 728779 mysql>SELECT TO_DAYS('1997-10-07');-> 729669
          TO_DAYS() ist nicht für die Verwendung mit
          Werten geeignet, die vor der Einführung des gregorianischen
          Kalenders (1582) liegen, da die bei der Kalenderumstellung
          „verlorenen“ Tage von der Funktion nicht
          berücksichtigt werden. Bei Daten vor 1582 (und
          standortabhängig möglicherweise auch danach) sind die
          Ergebnisse dieser Funktion nicht zuverlässig. Weitere
          Informationen finden Sie in Abschnitt 12.6, „Welchen Kalender benutzt MySQL?“.
        
          Denken Sie daran, dass MySQL zweistellige Jahresangaben unter
          Verwendung der in Abschnitt 11.3, „Datums- und Zeittypen“,
          beschriebenen Regeln in das vierstellige Format umwandelt.
          Beispielsweise werden '1997-10-07' und
          '97-10-07' als identische Daten betrachtet.
        
mysql> SELECT TO_DAYS('1997-10-07'), TO_DAYS('97-10-07');
        -> 729669, 729669
          
          UNIX_TIMESTAMP(),
          UNIX_TIMESTAMP(
        date)
          Sofern ohne Argument aufgerufen, gibt die Funktion einen
          Unix-Zeitstempel (Sekunden seit '1970-01-01
          00:00:00' im UTC-Format) als vorzeichenlosen Integer
          zurück. Wenn UNIX_TIMESTAMP() mit einem
          Argument date aufgerufen wird, gibt
          es den Wert des Arguments als seit dem Zeitpunkt
          '1970-01-01 00:00:00' (UTC) verstrichene
          Sekunden zurück. date kann ein
          DATE-String, ein
          DATETIME-String, ein
          TIMESTAMP oder eine Zahl im Format
          YYMMDD oder YYYYMMDD
          sein. Der Server interpretiert date
          als Wert in der aktuellen Zeitzone und wandelt es in einen
          internen Wert in UTC um. Clients können ihre Zeitzone wie in
          Abschnitt 5.11.8, „Zeitzonen-Unterstützung des MySQL-Servers“, beschrieben einstellen.
        
mysql>SELECT UNIX_TIMESTAMP();-> 882226357 mysql>SELECT UNIX_TIMESTAMP('1997-10-04 22:23:00');-> 875996580
          Wenn UNIX_TIMESTAMP für eine
          TIMESTAMP-Spalte verwendet wird, gibt die
          Funktion den internen Zeitstempelwert direkt zurück, d. h.
          ohne implizite Konvertierung des Strings in einen
          Unix-Zeitstempel. Wenn Sie einen Wert außerhalb des
          zulässigen Bereichs an UNIX_TIMESTAMP()
          übergeben, wird 0 zurückgegeben.
        
          Hinweis: Wenn Sie UNIX_TIMESTAMP() und
          FROM_UNIXTIME() zur Konvertierung zwischen
          TIMESTAMP-Werten und Unix-Zeitstempelwerten
          verwenden, ist die Konvertierung verlustbehaftet, weil die
          Zuordnung nicht in beiden Richtungen 1 : 1 erfolgt.
          Beispielsweise kann es aufgrund der Konventionen zur Änderung
          der lokalen Zeitzone möglich sein, dass zwei
          UNIX_TIMESTAMP()-Funktionen zwei
          TIMESTAMP-Werte in denselben
          Unix-Zeitstempelwert umwandeln.
          FROM_UNIXTIME() wiederum konvertiert den
          Wert dann in nur einen der ursprünglichen
          TIMESTAMP-Werte zurück. Es folgt ein
          Beispiel unter Verwendung von
          TIMESTAMP-Werten in der Zeitzone
          CET (mitteleuropäische Zeit):
        
mysql>SELECT UNIX_TIMESTAMP('2005-03-27 03:00:00');+---------------------------------------+ | UNIX_TIMESTAMP('2005-03-27 03:00:00') | +---------------------------------------+ | 1111885200 | +---------------------------------------+ mysql>SELECT UNIX_TIMESTAMP('2005-03-27 02:00:00');+---------------------------------------+ | UNIX_TIMESTAMP('2005-03-27 02:00:00') | +---------------------------------------+ | 1111885200 | +---------------------------------------+ mysql>SELECT FROM_UNIXTIME(1111885200);+---------------------------+ | FROM_UNIXTIME(1111885200) | +---------------------------+ | 2005-03-27 03:00:00 | +---------------------------+
          Wenn Sie UNIX_TIMESTAMP()-Spalten
          subtrahieren wollen, sollten Sie das Ergebnis in
          vorzeichenbehaftete Integers umwandeln. Siehe auch
          Abschnitt 12.8, „Cast-Funktionen und Operatoren“.
        
          Gibt das aktuelle UTC-Datum als Wert in den Formaten
          'YYYY-MM-DD' oder
          YYYYMMDD aus. Das Ausgabeformat hängt
          davon ab, ob die Funktion in einem String- oder einem
          numerischen Kontext verwendet wird.
        
mysql> SELECT UTC_DATE(), UTC_DATE() + 0;
        -> '2003-08-14', 20030814
          Gibt die aktuelle UTC-Uhrzeit als Wert in den Formaten
          'HH:MM:SS' oder HHMMSS
          aus. Das Ausgabeformat hängt davon ab, ob die Funktion in
          einem String- oder einem numerischen Kontext verwendet wird.
        
mysql> SELECT UTC_TIME(), UTC_TIME() + 0;
        -> '18:07:53', 180753
          
          UTC_TIMESTAMP,
          UTC_TIMESTAMP()
        
          Gibt die aktuellen UTC-Werte für Datum und Uhrzeit als Wert
          in den Formaten YYYYMMDDHHMMSS oder
          'YYYY-MM-DD HH:MM:SS' aus. Das
          Ausgabeformat hängt davon ab, ob die Funktion in einem
          String- oder einem numerischen Kontext verwendet wird.
        
mysql> SELECT UTC_TIMESTAMP(), UTC_TIMESTAMP() + 0;
        -> '2003-08-14 18:08:04', 20030814180804
          Diese Funktion gibt die Nummer der Woche für
          date zurück. Wird
          WEEK() mit zwei Argumenten verwendet, dann
          gestattet Ihnen die Funktion die Angabe, ob die Woche am
          Sonntag oder Montag beginnt und ob der Rückgabewert im
          Bereich zwischen 0 und
          53 oder 1 und
          53 liegen soll. Wird das Argument
          mode weggelassen, so wird der Wert
          der Systemvariablen default_week_format
          verwendet. Siehe auch
          Abschnitt 5.2.2, „Server-Systemvariablen“.
        
          Die folgende Tabelle beschreibt, wie das Argument
          mode funktioniert.
        
| Erster | |||
| Modus | Wochentag | Bereich | Woche 1 ist die erste Woche … | 
| 0 | Sonntag | 0–53 | mit einem Sonntag in diesem Jahr | 
| 1 | Montag | 0–53 | mit mehr als drei Tagen innerhalb dieses Jahres | 
| 2 | Sonntag | 1–53 | mit einem Sonntag in diesem Jahr | 
| 3 | Montag | 1–53 | mit mehr als drei Tagen innerhalb dieses Jahres | 
| 4 | Sonntag | 0–53 | mit mehr als drei Tagen innerhalb dieses Jahres | 
| 5 | Montag | 0–53 | mit einem Montag in diesem Jahr | 
| 6 | Sonntag | 1–53 | mit mehr als drei Tagen innerhalb dieses Jahres | 
| 7 | Montag | 1–53 | mit einem Montag in diesem Jahr | 
mysql>SELECT WEEK('1998-02-20');-> 7 mysql>SELECT WEEK('1998-02-20',0);-> 7 mysql>SELECT WEEK('1998-02-20',1);-> 8 mysql>SELECT WEEK('1998-12-31',1);-> 53
          Beachten Sie, dass, wenn ein Datum in die letzte Woche des
          vorherigen Jahres fällt, MySQL 0
          zurückgibt, sofern Sie nicht 2,
          3, 6 oder
          7 als optionales
          mode-Argument angeben:
        
mysql> SELECT YEAR('2000-01-01'), WEEK('2000-01-01',0);
        -> 2000, 0
          Man könnte nun anführen, dass MySQL doch eigentlich
          52 für die Funktion
          WEEK() zurückgeben sollte, da das
          angegebene Datum eigentlich in der 52. Woche des Jahres 1999
          liegt. Wir haben aber beschlossen, stattdessen
          0 zurückgeben zu lassen, weil die Funktion
          „Nummer der Woche im angegebenen Jahr“
          zurückgeben soll. Dies macht die Verwendung der Funktion
          WEEK() zuverlässig, wenn sie mit anderen
          Funktionen kombiniert wird, die einen Tagesbestandteil aus dem
          Datum extrahieren.
        
          Wenn Sie eine Auswertung des Ergebnisses in Bezug auf das Jahr
          vorziehen, das den ersten Tag der Woche des angegebenen Datums
          enthält, dann verwenden Sie 0,
          2, 5 oder
          7 als optionales
          mode-Argument.
        
mysql> SELECT WEEK('2000-01-01',2);
        -> 52
          Alternativ verwenden Sie die Funktion
          YEARWEEK():
        
mysql>SELECT YEARWEEK('2000-01-01');-> 199952 mysql>SELECT MID(YEARWEEK('2000-01-01'),5,2);-> '52'
          Gibt den Wochentagindex für date
          zurück (0 = Montag, 1 =
          Dienstag, …, 6 = Sonntag).
        
mysql>SELECT WEEKDAY('1998-02-03 22:23:00');-> 1 mysql>SELECT WEEKDAY('1997-11-05');-> 2
          Gibt die Kalenderwoche des Datums als Zahl im Bereich zwischen
          1 und 53 zurück.
          WEEKOFYEAR() ist eine
          Kompatibilitätsfunktion, die äquivalent zu
          WEEK(
          ist.
        date,3)
mysql> SELECT WEEKOFYEAR('1998-02-20');
        -> 8
          Gibt das Jahr für date im Bereich
          zwischen 1000 und 9999
          oder aber 0 für das
          „Nulldatum“ zurück.
        
mysql> SELECT YEAR('98-02-03');
        -> 1998
          
          YEARWEEK(,
          date)YEARWEEK(
        date,start)
          Gibt Jahr und Woche für ein Datum zurück. Das Argument
          start funktioniert ganz genauso wie
          das Argument start für
          WEEK(). Das Jahr im Ergebnis kann sich im
          Falle der ersten und der letzten Woche des Jahres vom Jahr im
          Datumsargument unterscheiden.
        
mysql> SELECT YEARWEEK('1987-01-01');
        -> 198653
          Beachten Sie, dass die Wochennummer sich von dem, was die
          Funktion WEEK() für ihre optionalen
          Argumente 0 oder 1
          zurückgäbe (nämlich 0), unterscheidet,
          denn WEEK() gibt die Woche im Kontext des
          angegebenen Jahres zurück.
        
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.

