Hi,
ich benötige eine Abfrage, die mir die nächste autoincrement-ID aus einer Tabelle holt.
Bisher hat mir folgende Abfarge gute Dienste geleistet:
Nun sitz ich aber daran, das Script umzuschreiben. Denn es gibt nun 2 verschiedene Tabellen, wo die Artikel gespeichert werden (abhängig davon, welche Artikelart es ist. Z.b. KFZ Artikel oder Lebensmittel.. etc.)
Ich würde es nun gern so machen, das ich selbst vorgebe, was die nächste ID ist. Das macht zwar autoincrement überflüssig.. aber so hab ich eine ArtikelID, die eindeutig einem Artikel zugeordnet ist.
So... folgende Abfrage liefert mir erstmal die Tabellen namen zurück, die ich gern abfragen möchte.
Nun hatte ich mir gedacht:
Nur leider:
Die Fehlermeldung ist sicherlich richtig... aber nicht anwendbar (zumindest nicht mit der Sub-Select-Abfrage)
Wie kann ich es anders machen, sodas ich wirklich nur die höchste ID von der Sub-Select-Abfrage zurückbekomme.
Braucht Ihr die Tabellen-Struktur hierfür (?)
ich benötige eine Abfrage, die mir die nächste autoincrement-ID aus einer Tabelle holt.
Bisher hat mir folgende Abfarge gute Dienste geleistet:
PHP-Code:
$id = mysql_fetch_row( mysql_query( "SELECT MAX(id) + 1 FROM artikel"));
Ich würde es nun gern so machen, das ich selbst vorgebe, was die nächste ID ist. Das macht zwar autoincrement überflüssig.. aber so hab ich eine ArtikelID, die eindeutig einem Artikel zugeordnet ist.
So... folgende Abfrage liefert mir erstmal die Tabellen namen zurück, die ich gern abfragen möchte.
Code:
SELECT `tabellen_namen` FROM `verkaufsformular` WHERE `freigeschaltet` = 1 z.B. tabellen_namen artikel-kfz artikel-lebensmittel
Nun hatte ich mir gedacht:
Code:
SELECT MAX(id) + 1 FROM (SELECT `tabellen_namen` FROM `verkaufsformular` WHERE `freigeschaltet` = 1)
Every derived table must have its own alias
Wie kann ich es anders machen, sodas ich wirklich nur die höchste ID von der Sub-Select-Abfrage zurückbekomme.
Braucht Ihr die Tabellen-Struktur hierfür (?)
Kommentar