PythonQ 240-8XX Bedienungsanleitung Seite 170

  • Herunterladen
  • Zu meinen Handbüchern hinzufügen
  • Drucken
  • Seite
    / 768
  • Inhaltsverzeichnis
  • LESEZEICHEN
  • Bewertet. / 5. Basierend auf Kundenbewertungen
Seitenansicht 169
Kapitel 4: Einf¨uhrung in MySQL: Ein MySQL-Tutorial 149
sterbetag-Wert NULL ist. Dann berechnen Sie f¨ur diejenigen Tiere mit Nicht-NULL-Werten
den Unterschied zwischen sterbetag- und geburtstag-Werten:
mysql> SELECT name, geburtstag, sterbetag,
-> (YEAR(sterbetag)-YEAR(geburtstag)) - (RIGHT(sterbetag,5)<RIGHT(geburtstag,5))
-> AS age
-> FROM pet WHERE sterbetag IS NOT NULL ORDER BY age;
+--------+------------+------------+------+
| name | geburtstag | sterbetag | age |
+--------+------------+------------+------+
| Bowser | 1989-08-31 | 1995-07-29 | 5 |
+--------+------------+------------+------+
Die Anfrage b enutzt sterbetag IS NOT NULL statt sterbetag != NULL, weil NULL ein
spezieller Wert ist. Das wird sp¨ater erkl¨art. Siehe Abschnitt 4.3.4.6 [Mit NULL-Werten
arbeiten], Seite 150.
Was ist, wenn Sie wissen wollen, welche Tiere achsten Monat Geburtstag haben? F¨ur diese
Art von Berechnung sind Jahre und Tage irrelevant. Sie wollen lediglich den Monatsanteil
der geburtstag-Spalte extrahieren. MySQL bietet etliche Funktionen ur die Extraktion
von Datumsanteilen, wie YEAR(), MONTH() und DAYOFMONTH(). MONTH() ist hier die richtige
Funktion. Um festzustellen, wie sie funktioniert, geben Sie eine Anfrage ein, die sowohl die
Werte von geburtstag als auch die von MONTH(geburtstag) ausgibt:
mysql> SELECT name, geburtstag, MONTH(geburtstag) FROM pet;
+----------+------------+-------------------+
| name | geburtstag | MONTH(geburtstag) |
+----------+------------+-------------------+
| Fluffy | 1993-02-04 | 2 |
| Claws | 1994-03-17 | 3 |
| Buffy | 1989-05-13 | 5 |
| Fang | 1990-08-27 | 8 |
| Bowser | 1989-08-31 | 8 |
| Chirpy | 1998-09-11 | 9 |
| Whistler | 1997-12-09 | 12 |
| Slim | 1996-04-29 | 4 |
| Puffball | 1999-03-30 | 3 |
+----------+------------+-------------------+
Tiere mit Geburtstagen im kommenden Monat zu finden ist ebenfalls leicht. Nehmen wir
an, der aktuelle Monat ist April. Dann ist der Monatswert 4 und Sie suchen nach Tieren,
die im Mai (Monat 5) geboren sind, wie folgt:
mysql> SELECT name, geburtstag FROM pet WHERE MONTH(geburtstag) = 5;
+-------+------------+
| name | geburtstag |
+-------+------------+
| Buffy | 1989-05-13 |
+-------+------------+
Seitenansicht 169
1 2 ... 165 166 167 168 169 170 171 172 173 174 175 ... 767 768

Kommentare zu diesen Handbüchern

Keine Kommentare