Spalten neu durchnummerieren (subselect)
am 02.07.2007 18:17:30 von NurkaiHi @all
Mysql Version 5.0.26 auf Linux:
ich habe eine Tabelle 'Packorder'(unwichtiges weggelassen)
PA_ID =3D> auto_increment
PA_ORDER =3D> int //gibt eine Artikelsortierung an
________+________+
|PA_ID |PA_ORDER|
|1 | 1|
|2 | 3|
|3 | 4|
|4 | 7|
|5 | 9|
Es gibt keine doppelten Werte in 'PA_ORDER'
Ich möchte gern mit einem Statement die Spalte 'PA_ORDER' beginnend
mit '1'
neu durchnummerieren.
Habe folgendes probiert:
update packartikel set PA_ORDER=3D(select count(*) from packartikel b
where a.PA_ORDER>b.PA_ORDER)+1;
Meckert MySql:
'You can't specify target table 'packartikel' for update in FROM
clause';
Frage 1:
Wie löst Ihr das Problem...
Frage 2:
Hat irgendjemand ne Ahnung ob MySql (wenn ja, ab welcher Version)
solche Anweisungen in subqueries untersützt ?
thx for help Nurkai