vorheriges KapitelInhaltsverzeichnisStichwortverzeichnisFeedbacknächstes Kapitel


Anhang C.

Anhang Schnellüberblick über die MySQL- Funktionen

Hier finden Sie einen Überblick über die momentan in MySQL unterstützten Datentypen sowie viele Funktionen, die Sie für Ihre Abfragen einsetzen können, um Ihre Applikationen weiter zu verbessern.

Die Beschreibungen stellen eine vereinfachte und abgekürzte Version der Beschreibungen von der MySQL-Homepage (http://www.mysql.com/) dar. Weitere Informationen entnehmen Sie bitte der offiziellen Dokumentation.

C.1 Allgemeine Datentypen

TINYINT [UNSIGNED] - Eine sehr kleine ganze Zahl. Der vorzeichenbehaftete Bereich liegt zwischen -128 und 127. Der vorzeichenlose Bereich liegt zwischen 0 und 255.

SMALLINT [UNSIGNED] - Eine kleine ganze Zahl. Der vorzeichenbehaftete Bereich liegt zwischen -32768 und 32767. Der vorzeichenlose Bereich liegt zwischen 0 und 65535.

MEDIUMINT [UNSIGNED] - Eine mittelgroße ganze Zahl. Der vorzeichenbehaftete Bereich liegt zwischen -8388608 und 8388607. Der vorzeichenlose Bereich liegt zwischen 0 und 16777215.

INT [UNSIGNED] - Eine normalgroße ganze Zahl. Der vorzeichenbehaftete Bereich liegt zwischen -2147483648 und 2147483647. Der vorzeichenlose Bereich liegt zwischen 0 und 4294967295.

INTEGER [UNSIGNED] - Ein Synonym für INT.

BIGINT [UNSIGNED] - Eine große ganze Zahl. Der vorzeichenbehaftete Bereich liegt zwischen -9223372036854775808 und 9223372036854775807. Der vorzeichenlose Bereich liegt zwischen 0 und 18446744073709551615.

FLOAT - Eine kleine Fließkommazahl (einfache Genauigkeit). Kann nicht vorzeichenlos sein. Erlaubte Werte liegen im Bereich zwischen -3.402823466E+38 bis -1.175494351E- 38, 0 und 1.175494351E-38 bis 3.402823466E+38

DOUBLE - Eine normal große Fließkommazahl (doppelte Genauigkeit). Kann nicht vorzeichenlos sein. Erlaubte Werte liegen im Bereich zwischen - 1.7976931348623157E+308 und -2.2250738585072014E-308, 0 und 2.2250738585072014E-308 bis 1.7976931348623157E+308.

DECIMAL - Eine nicht gepackte Fließkommazahl. Kann nicht vorzeichenlos sein. Verhält sich wie eine CHAR-Spalte: »Nicht gepackt« bedeutet, dass die Zahl als Zeichenkette abgelegt wird, wobei für jede Stelle des Werts ein Zeichen verwendet wird.

DATETIME - Eine Datum/Zeit-Kombination. Der unterstützte Bereich liegt zwischen '1000-01-01 00:00:00' und '9999-12-31 23:59:59'. MySQL zeigt DATETIME-Werte im Format 'YYYY-MM-DD HH:MM:SS' an, aber Sie können DATETIME-Spalten sowohl Zeichenketten als auch Zahlen zuweisen.

TIMESTAMP - Ein Zeitstempel. Der Bereich liegt zwischen '1970-01-01 00:00:00' und irgendwann im Jahr 2037.

YEAR - Ein Jahr in 2- oder 4-stelligem Format (der Standard verwendet 4 Stellen) Die erlaubten Werte sind 1901 bis 2155 und 0000 im 4-stelligen Format und 1970-2069 im 2-stelligen Format (70-69).

CHAR(M) [BINARY] - Eine Zeichenkette fester Länge, die rechts immer mit Leerzeichen auf die angegebene Länge aufgefüllt wird. Der Bereich von M liegt zwischen 1 und 255 Zeichen. Führende Leerzeichen werden beim Laden des Werts entfernt. CHAR-Werte werden ohne Berücksichtigung der Groß-/Kleinschreibung sortiert und verglichen, wobei auf den Standardzeichensatz zurückgegriffen wird, es sei denn, das Schlüsselwort BINARY wurde angegeben.

VARCHAR(M) [BINARY] - Eine Zeichenkette variabler Länge. Hinweis: Beim Speichern des Werts werden führende Leerzeichen entfernt. Der Wert von M liegt zwischen 1 und 255 Zeichen. VARCHAR-Werte werden ohne Berücksichtigung der Groß- /Kleinschreibung sortiert und verglichen, es sei denn, das Schlüsselwort BINARY wurde angegeben.

TINYBLOB/TINYTEXT - Eine BLOB- oder TEXT-Spalte mit einer maximalen Länge von 255 (28-1) Zeichen.

BLOB/TEXT - Eine Spalte mit einer maximalen Länge von 65535 (216-1) Zeichen.

MEDIUMBLOB/MEDIUMTEXT - Eine BLOB- oder TEXT-Spalte mit einer maximalen Länge von 16777215 (224-1) Zeichen.

LONGBLOB/LONGTEXT - Eine BLOB- oder TEXT-Spalte mit einer maximalen Länge von 4294967295 (232-1) Zeichen.

C.2 Arithmetische Operationen

+ - Addition

- - Subtraktion

* - Multiplikation

/ - Division

C.3 Logische Operationen

! oder NOT - Logisches NOT

OR oder || - Logisches OR

AND oder && - Logisches AND. Gibt 0 zurück, wenn ein Argument 0 oder NULL ist, andernfalls 1.

C.4 Numerische Vergleiche

= - Gleich

<> oder != - Ungleich

<= - Kleiner gleich

< - Kleiner

>= - Größer gleich

> - Größer

IS NULL/IS NOT NULL - Prüft, ob ein Wert NULL ist (oder nicht).

<ausdruck> BETWEEN <min> AND <max> - Überprüft, ob ein Ausdruck zwischen zwei Werten liegt.

<ausdruck> IN (<wert 1>,<...>) - Vergleicht einen Ausdruck mit einer Liste. Gibt true zurück, wenn der Ausdruck mit einem Wert in der Liste übereinstimmt.

<ausdruck> NOT IN (<wert 1>,<...>) - Kehrt die vorhergehende Funktion um.

ISNULL(<ausdruck>) - Gibt true zurück, wenn der Ausdruck einen NULL-Wert hat.

C.5 Funktionen für Zeichenkettenvergleiche

<ausdruck> LIKE <muster> - Mustervergleich mithilfe einfacher regulärer Ausdrücke von SQL.

<ausdruck> NOT LIKE <muster> - Das Gegenteil des vorherigen Vergleichs.

<ausdruck> REGEXP <muster> / <ausdruck> RLIKE <muster> - Führt einen Mustervergleich eines Zeichenkettenausdrucks ausdruck mit einem Muster muster durch.

<ausdruck> NOT REGEXP <muster> / <ausdruck> NOT RLIKE <muster> - Das Gegenteil des vorherigen Vergleichs.

STRCMP(<ausdruck1>,<ausdruck2>) - Gibt 0 zurück, wenn die Zeichenketten gleich sind, -1, wenn das erste Argument kleiner als das zweite ist (unter Berücksichtigung der aktuellen Suchreihenfolge), andernfalls 1.

MATCH (<feldname1>,<feldname2>,<...>) AGAINST <ausdruck> - MATCH ... AGAINST() wird für Volltextsuchen verwendet und gibt das Relevanz/Ähnlichkeits-Maß zwischen dem Text in den Feldern und dem Ausdruck zurück.

C.6 Mathematische Funktionen

ABS(X) - -Gibt den Absolutwert von x zurück.

SIGN(X) - Gibt das Vorzeichen des Arguments als -1, 0 oder 1 zurück, abhängig davon, ob X negativ, Null oder positiv ist.

MOD(N,M) - % Modulo (wie der %-Operator in C). Gibt den Rest der ganzzahligen Division von N durch M zurück.

FLOOR(X) - Gibt die größte ganze Zahl kleiner x zurück.

CEILING(X) - Gibt die kleinste ganze Zahl größer X zurück.

ROUND(X) - Gibt das Argument X zurück, gerundet auf die nächste ganze Zahl.

ROUND(X,D) - Gibt das Argument X zurück, gerundet auf eine Zahl mit D Dezimalstellen. Ist D gleich 0, hat das Ergebnis keinen Dezimalpunkt und keinen Bruchteil.

EXP(X) - Gibt den Wert von e (die Basis des natürlichen Logarithmus) erhoben in die Potenz X zurück.

LOG(X) - Gibt den natürlichen Logarithmus von X zurück.

LOG10(X) - Gibt den 10er-Logarithmus von X zurück.

POW(X,Y) / POWER(X,Y) - Gibt X in die Potenz Y erhoben zurück.

SQRT(X) - Gibt die nicht-negative Quadratwurzel von X zurück.

PI()- Gibt den Wert von PI zurück.

COS(X) - Gibt den Kosinus von X zurück, wobei X in Radianten angegeben wird.

SIN(X) - Gibt den Sinus von X zurück, wobei X in Radianten angegeben wird.

TAN(X) - Gibt den Tangens von X zurück, wobei X in Radianten angegeben wird.

ACOS(X) - Gibt den Arkus-Kosinus von X zurück, d.h. den Wert, dessen Kosinus X ist. Gibt NULL zurück, wenn X nicht im Bereich zwischen -1 und 1 liegt.

ASIN(X) - Gibt den Arkus-Sinus von X zurück, d.h. den Wert, dessen Sinus X ist. Gibt NULL zurück, wenn X nicht im Bereich zwischen -1 und 1 liegt.

ATAN(X) - Gibt den Arkus-Tangens von X zurück, d.h. den Wert, dessen Tangens gleich X ist.

ATAN2(X,Y) - Gibt den Arkus-Tangens der beiden Variablen X und Y zurück. Erfolgt ähnlich der Berechnung des Arkus-Tangens von Y / X, außer dass die Vorzeichen der beiden Argumente verwendet werden, um den Quadranten des Ergebnis zu ermitteln.

COT(X) - Gibt den Kotangens von X zurück.

RAND() / RAND(N) - Gibt einen zufälligen Fließkommawert im Bereich zwischen 0 und 1.0 zurück. Wird ein ganzzahliges Argument N angegeben, wird dieses als Ausgangswert verwendet.

LEAST(X,Y,...) - Gibt für zwei oder mehr Argumente das kleinste der Argumente zurück.

GREATEST(X,Y,...) - Gibt für zwei oder mehr Argumente das größte der Argumente zurück.

RADIANS(X) - Gibt das Argument X zurück, umgewandelt von Grad in Radianten.

TRUNCATE(X,D) - Gibt die Zahl X zurück, gekürzt auf D Dezimalstellen. Ist D gleich 0, hat das Ergebnis keinen Dezimalpunkt und keinen Bruchteil.

C.7 Zeichenkettenfunktionen

ASCII(str) - Gibt den ASCII-Code des linken Zeichen des Strings str zurück. Ist str eine leere Zeichenkette, wird 0 zurückgegeben. Ist str gleich NULL, wird NULL zurückgegeben.

CONV(N,von_basis,in_basis) - Wandelt Zahlen zwischen verschiedenen Zahlenbasen um. Gibt eine Zeichenkettendarstellung der Zahl N zurück, umgewandelt von von_basis in in_basis.

BIN(N) - Gibt eine Zeichenkettendarstellung des binären Werts von N zurück.

OCT(N) - Gibt eine Zeichenkettendarstellung des oktalen Werts von N zurück.

HEX(N) - Gibt eine Zeichenkettendarstellung des hexadezimalen Werts von N zurück.

CHAR(N,...) - Interpretiert die Argumente als ganze Zahlen und gibt eine Zeichenkette zurück, die aus den Zeichen besteht, die die ASCII-Codes dieser ganzen Zahlen darstellen.

CONCAT(str1,str2,...) - Gibt die Zeichenkette zurück, die aus der Konkatenation der beiden Werte entsteht.

CONCAT_WS(trennzeichen, str1, str2,...) - CONCAT_WS() steht für CONCAT With Separator (Mit Trennzeichen konkatenieren). Dies ist eine Sonderform von CONCAT(). Das erste Argument ist das Trennzeichen für die restlichen Argumente.

LENGTH(str) - Gibt die Länge der Zeichenkette str zurück.

LOCATE(substr,str) / POSITION(substr IN str) - Gibt die Position des ersten Auftretens der Teilzeichenkette substr in der Zeichenkette str zurück. Gibt 0 zurück, falls substr nicht in str enthalten ist.

LOCATE(substr,str,pos) - Gibt die Position des ersten Auftretens der Teilzeichenkette substr in der Zeichenkette str ab der Position pos zurück. Gibt 0 zurück, falls substr nicht in str enthalten ist.

INSTR(str,substr) - Gibt die Position des ersten Auftretens der Teilzeichenkette substr in der Zeichenkette str zurück. Entspricht der LOCATE()-Version mit zwei Argumenten, außer dass die Argumente vertauscht werden.

LPAD(str,len,padstr) - Gibt die Zeichenkette str zurück, links mit der Zeichenkette padstr aufgefüllt, bis str die Länge len hat.

RPAD(str,len,padstr) - Gibt die Zeichenkette str zurück, rechts mit der Zeichenkette padstr aufgefüllt, bis str die Länge len hat.

LEFT(str,len) - Gibt die linken len-Zeichen aus der Zeichenkette str zurück.

RIGHT(str,len) - Gibt die rechten len-Zeichen aus der Zeichenkette str zurück.

SUBSTRING(str,pos,len) / MID(str,pos,len) - Gibt eine Teilzeichenkette mit len- Zeichen aus der Zeichenkette str zurück, beginnend an der Position pos.

SUBSTRING(str,pos) - Gibt eine Teilzeichenkette aus der Zeichenkette str zurück, beginnend an der Position pos.

LTRIM(str) - Gibt die Zeichenkette str zurück, wobei führende Leerzeichen entfernt werden.

RTRIM(str) - Gibt die Zeichenkette str zurück, wobei nachfolgende Leerzeichen entfernt werden.

SOUNDEX(str) - Gibt eine soundex-Zeichenkette aus str zurück. Zwei Zeichenketten, die ähnlich klingen, sollten identische soundex-Zeichenketten haben.

SPACE(N) - Gibt eine Zeichenkette aus N Leerzeichen zurück.

REPLACE(str,von_str,in_str) - Gibt die Zeichenkette str zurück, wobei alle Auftreten der Zeichenkette von_str durch die Zeichenkette in_str ersetzt werden.

REPEAT(str,count) - Gibt eine Zeichenkette zurück, in der str count-mal wiederholt wird. Ist count <= 0, gibt die Funktion eine leere Zeichenkette zurück. Sind str oder count gleich NULL, gibt die Funktion NULL zurück.

REVERSE(str) - Gibt die Zeichenkette str zurück, wobei die Reihenfolge der Zeichen umgekehrt ist.

INSERT(str,pos,len,newstr) - Gibt die Zeichenkette str zurück, wobei die Teilzeichenkette, die an Position pos beginnt und len Zeichen lang ist, durch die Zeichenkette newstr ersetzt wird.

LCASE(str) / LOWER(str) - Gibt die Zeichenkette str zurück, wobei alle Zeichen in Kleinbuchstaben umgewandelt werden.

UCASE(str) / UPPER(str) - Gibt die Zeichenkette str zurück, wobei alle Zeichen in Großbuchstaben umgewandelt werden.

C.8 Datums- und Zeitfunktionen

DAYOFWEEK(datum) - Gibt den Indexwert des Wochentags für das Datum zurück (1 = Sonntag, 2 = Montag usw.).

WEEKDAY(datum) - Gibt den Wochenindex für das Datum zurück (0 = Montag, 1 = Dienstag usw., 6 = Sonntag).

DAYOFMONTH(datum) - Gibt den Tag im Monat für das Datum zurück, der im Bereich zwischen 1 und 31 liegt.

DAYOFYEAR(datum) - Gibt den Tag im Jahr für das Datum zurück, der im Bereich zwischen 1 und 366 liegt.

MONTH(datum) - Gibt den Monat für das Datum zurück, der im Bereich zwischen 1 und 12 liegt.

DAYNAME(datum) - Gibt den Namen des Wochentags für das Datum zurück.

MONTHNAME(datum) - Gibt den Namen des Monats für das Datum zurück.

QUARTER(datum) - Gibt das Vierteljahr des Jahres für das Datum zurück, das im Bereich zwischen 1 und 4 liegt.

WEEK(datum) / WEEK(datum,first) - Gibt für ein einziges Argument die Woche für das Datum zurück, die im Bereich zwischen 0 und 53 liegt.

YEAR(datum) - Gibt das Jahr für das Datum zurück, das im Bereich zwischen 1000 und 9999 liegt.

YEARWEEK(datum) / YEARWEEK(datum,first) - Gibt das Jahr und die Woche für ein Datum zurück.

HOUR(zeit) - Gibt die Stunde für die Zeit zurück, die im Bereich zwischen 0 und 23 liegen kann.

MINUTE(zeit) - Gibt die Minute für die Zeit zurück, die im Bereich zwischen 0 und 59 liegt.

SECOND(zeit) - Gibt die Sekunde für die Zeit zurück, die im Bereich zwischen 0 und 59 liegt.

TO_DAYS(datum) - Gibt für ein Datum die Nummer des Tages zurück (die Anzahl der Tage seit dem Jahr 0).

FROM_DAYS(N) - Gibt für eine Tagesnummer N den Datumswert zurück.

CURDATE() / CURRENT_DATE - Gibt das aktuelle Datum zurück.

CURTIME() / CURRENT_TIME - Gibt die aktuelle Zeit zurück.

NOW()- Gibt das aktuelle Datum und die aktuelle Zeit zurück.

SEC_TO_TIME(sekunden) - Gibt das Argument sekunden zurück, umgewandelt in Stunden, Minuten und Sekunden.

TIME_TO_SEC(zeit) - Gibt das Argument in Sekunden umgewandelt zurück.

C.9 Aggregatfunktionen für GROUP BY-Klauseln

COUNT(<ausdruck>) - Gibt einen Zähler der Anzahl der Werte ungleich NULL zurück, die durch eine SELECT-Anweisung aus der Zeile abgerufen wurden.

COUNT(DISTINCT <ausdruck>,[<ausdruck...>]) - Gibt einen Zähler der Anzahl unterschiedlicher Werte ungleich NULL zurück.

AVG(<ausdruck>) - Gibt den Durchschnittswert für ausdruck zurück.

MIN(<ausdruck>) - Gibt den Minimumwert für ausdruck zurück.

MAX(<ausdruck>) - Gibt den Maximumwert für ausdruck zurück.

SUM(<ausdruck>) - Gibt die Summe für ausdruck zurück. Beachten Sie, dass die Funktion NULL zurückgibt, wenn die Ergebnismenge keine Zeilen hat.

STD(<ausdruck>) / STDDEV(<ausdruck>) - Gibt die Standardabweichung für ausdruck zurück.



vorheriges KapitelInhaltsverzeichnisStichwortverzeichnisFeedbackKapitelanfangnächstes Kapitel


© Markt+Technik Verlag, ein Imprint der Pearson Education Deutschland GmbH