Dies ist nun die Seite, die alles wichtige und interessante zusammenfaßt, wenn man beginnt, das wirklich wichtige und interessante aus den Augen zu verlieren!

MySQL

Datum
Eintragungen zum Mitloggen (langsamer) Queries
Ein select-statement als CSV in eine Datei schreiben
csv einlesen
Einer Tablle ein Feld hinzufügen
Allgemein
Auflisten der aktuellen Prozesse
MySQL-Datum formatieren:
DATE_FORMAT([date],[format])
DATE_FORMAT([date],\"%m.%d.%Y\")
datum:
date >= DATE_FORMAT("$year-$month-$day","%Y%m%d")
DATE_FORMAT(date_add(now(),interval "[x]" DAY) ,\"%d.%m.%Y\") -> jetzt plus [x] Tage
DATE_FORMAT(date_add(now(),interval "[x] [y]" DAY_HOUR) ,\"%d.%m.%Y\") -> jetzt plus [x] Tage plus [y] Stunden
top
Allgemein
select [*/from [tabelle] where [feld] =/>/ select [*/feld] from [tabelle] where [feld] like [wert]
select concat([field1/name1],[field2/name2][field3/name3],) from ...
-> Alles in der Klammer wird zu einer Ausgabe zusammengefasst.
[namex] kann dabei eine beliebige Bezeichnung sein, muss in '' gesetzt werden
insert into [tabelle] values([werte für alle felder])
insert into [tabelle] ([feld1],[feld2]) values([werte für alle angegebenen felder]
update [tabelle] set [feld] = [wert] where [feld] = [wert]
delete from [tabelle] where [feld] = [wert]
drop [table]
select distinct([feld]) from [table] -> Ähnlich wie group by [fel]
describe [query] -> beschreibung wie gesucht wird und ob keys verwendet werden
top
csv einlesen:
load data infile '[pfad/file]' into table [table] FIELDS TERMINATED BY ',' ENCLOSED BY '"'
top
Ein select-statement als CSV in eine Datei schreiben:
select * into outfile '[file]'
fields terminated by ';'
enclosed by '"'
lines terminated by 'n'
from [table];

Dabei ist zu beachten, dass die Datei im MySQL-Verzeichnis erstellt wird.
Kann man umgehen, indem der absolute Pfad zur Datei angegeben wird.
Natürlich braucht man auch Schreibrechte für das angegebene Verzeichni!!
top
Eintragungen zum Mitloggen (langsamer) Queries:
/etc/my.cnf: set-variable = long_query_time = 0.01
/etc/init.d/mysqld: /usr/bin/safe_mysqld --defaults-file=/etc/my.cnf --log-slow-queries=/var/log/[filename] --log-long-format >/dev/null 2>&1 &
top

Einer Tablle ein Feld hinzufügen

alter table [tabellenname] add [spaltenname] [typ] after [spaltenname]
alter table user add age date after lastname

Auflisten der aktuellen Prozesse:

show processlist;

 
Impressum