This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
sql:snippets:firstnotusedid [20.01.2015 09:57:39] yaslaw |
sql:snippets:firstnotusedid [31.03.2016 09:20:46] (current) yaslaw |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ======[MySQL] First not used Id====== | + | ======[SQL] First not used Id====== |
Erste freie ID einer Tabelle ermitteln | Erste freie ID einer Tabelle ermitteln | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | ACHTUNG! | ||
+ | Eignet sich nicht um in einer Multiuser-Umgebung die IDs zu vergeben, da zwischen ID auslesen und neuen Beitrag posten jemand anderes die ID besetzen kann. | ||
+ | </WRAP> | ||
+ | |||
===== Ausgangslage ===== | ===== Ausgangslage ===== | ||
Line 25: | Line 31: | ||
An diese hänge ich die Tabelle mittels eines LEFT JOIN | An diese hänge ich die Tabelle mittels eines LEFT JOIN | ||
Daraus nehme ich alle newId die in der Tabelle nicht als ID bestehen. | Daraus nehme ich alle newId die in der Tabelle nicht als ID bestehen. | ||
- | Zuguter letzt lese ich mit min() die klienste daraus aus. | + | Zuguter letzt lese ich mit min() die kleinste daraus aus. |
- | >ACHTUNG! | ||
- | >Eignet sich nicht um in einer Multiuser-Umgebung die IDs zu vergeben, da zwieschen ID auslesen und neuen Beitrag posten jemand anderes die ID besetzen kann. | ||
{{tag>MySQL}} | {{tag>MySQL}} | ||
===== Spielwiese ===== | ===== Spielwiese ===== | ||
[[http://sqlfiddle.com/#!2/68751c/1|Beispiel bei sqlfiddle.com]] | [[http://sqlfiddle.com/#!2/68751c/1|Beispiel bei sqlfiddle.com]] |