|
SQL Schlüsselwörter sind GROSS geschrieben, alle SQL Statements enden mit einem Semikolon
(;) # Kommentare stehen hinter dem 'Lattenzaun' |
SELECT |
SELECT dient zur
Selektierung (Auswahl) von Daten aus Datensätzen. (oder zur Ergebnisanzeigen von Funktionen) SELECT spalte1,spalte2 FROM tabelle WHERE a=b ORDER BY spalte2; Beispiele: SELECT * FROM kunden WHERE kdnr<=1000; SELECT COUNT(*) FROM kunden WHERE plz=12345; SELECT name FROM kunden WHERE name LIKE 'M%er'; SELECT AVG(wert) FROM kunden WHERE umsatz>100; SELECT * FROM kunden, bestellungen WHERE kunden.kdnr=bestellungen.kdnr SELECT name, MAX(wert) AS maximum FROM kunden GROUP BY name HAVING maximum >3; SELECT user(); #Zeigt den aktuellen Benutzer an SELECT version(),current_date,current_time() # Zeigt Version, Datum, Zeit an SELECT now(), (1+2)*5, sin(pi()/4) # Zeigt datetime (akt. Datum und Zeit), sowie die Ergebnisse an SELECT * FROM kunden LIMIT 0,10 # Zeigt ab Element 0 - 10 Datensätze an |
Verschachtelte SELECT Anfrage: SELECT name FROM kunden WHERE LENGTH(ort) = (SELECT MAX(LENGTH(ort)) FROM kunden) # alle Kunden mit den längsten Ortsnamen SELECT name FROM kunden WHERE bank IN (SELECT bankname FROM pleitebanken WHERE status=1) |
INSERT |
INSERT
dient zum Einfügen von Datensätzen. INSERT INTO tabelle VALUES (’’,’’,’’),(’’,’’,’’); |
UPDATE |
UPDATE dient zur
Änderung bestehnder Datensätze. UPDATE tabelle SET spalte=wert WHERE a=b; |
DELETE |
DELETE
ermöglicht die Löschung von Datensätzen. DELETE FROM tabelle WHERE a=b; |
Funktionen |
SQL Ausdruck > Ergebnis - Beschreibung SELECT CONV("AC3F",16,10) > 44095 - Zum Umwandeln zwischen Zahlensystemen. (Beispiel Hexadezimal in Dezimal umwandeln) SELECT CHAR(77,121,83,81,'76') > MySQL - Dezimalzahlen als Character darstellen. SELECT LEFT('Teststring',4) > Test - Gibt die x linkesten Zeichen eines Strings zurück SELECT RIGHT('Teststring',4) > ring - Gibt die x linkesten Zeichen eines Strings zurück SELECT SUBSTRING('Teststring',5,3) > str - Gibt ab dem 5ten Zeichen 3 Zeichen zurück SELECT LENGTH('Teststring') > 10 - Gibt die Anzahl der Zeichen eines Strings zurück SELECT REVERSE('Hallo') > ollaH - Gibt den String rückwärts aus SELECT LCASE('Hallo') > hallo - Wandelt den String in Kleinbuchstaben um SELECT UCASE('Hallo') > HALLO - Wandelt den String in Großbuchstaben um SELECT ROUND(3.1415926) > 3 - Rundet auf eine Dezimalzahl SELECT ROUND(3.1415926,4) > 3.1416 - Rundet auf x Dezimalstellen SELECT TRUNCATE(1.3456,2) > 1.34 - Zur Anzeige mit x Dezimalstellen (schneidet nur ab bzw. füllt ggf. mit Nullen auf) SELECT MAX(Feld) FROM Tabelle > 9 - Größten Wert ermitteln SELECT MIN(Feld) FROM Tabelle > 1 - Kleinsten Wert ermitteln |
Views |
Um z.B. eine eingeschränkte Sicht auf eine Tabelle zu geben: CREATE VIEW nur_namen AS SELECT vorname, nachname FROM adressen Die View erscheint wie eine andere Tabelle und ist auch genauso zugreifbar. Zum löschen geht man wie folgt vor: DROP VIEW nur_namen; |
Import / Export |
LOAD zum Laden
von Datensätzen. LOAD DATA INFILE ’filename’ [REPLACE|IGNORE] INTO TABLE tabelle [FIELDS TERMINATED BY ’\t’ ENCLOSED BY ’’ ESCAPED BY ’’ LINES TERMINATED BY ’\n’] [IGNORE number LINES (col_name,...)] # Achtung bei Pfadangaben Slash verwenden: c:/temp/abc.txt |
Folgende Kommandozeilenbefehle sind auch hilfreich: Export in eine .sql Datei mysqldump -u benutzername -p datenbank > backup.sql Exportiert alles in gut lesbarem Format mysqldump --opt -u benutzername -p datenbank > backup.sql Export in optimiertem Format Import aus einer .sql Datei mysql -u benutzername -p datenbank < backup.sql Import aus einer .sql Datei |
Sonstiges |
STATUS
# Zeigt den aktuellen Status an (mySQL Monitor) HELP # Zeigt Hilfeinformationen an QUIT # Beendet das Programm SHOW DATABASES # Zeigt alle Datenbanken an SHOW TABLES # Zeigt alle Tabellen an USE <datenbank> # Verwende die Datenbank mit dem Namen <datenbank> DESC <datenbank> # Beschreibt den Aufbau der Datenbank mit dem Namen <datenbank> CREATE DATABASE # <datenbank> Erzeugt eine neue Datenbank mit dem Namen <datenbank> DROP DATABASE # <datenbank> Löscht die Datenbank mit dem Namen <datenbank> |