| 

.NET C# Java Javascript Exception

2
Wie kann ich mit mysql eine neue spalte erzeugen, die die aktuelle zeilennummer enthält, also folgendes:

1.
2.
3.
...


Es sollte für MySQL 4 und 5 gehen.
29.01.2011
randy 31 1
Wofür brauchst du denn das? Die Zeilennummern haben doch in einer mengenbasierten Datenbank keine Bedeutung.
Baconstrip 31.01.2011
Dafür aber in der Darstellung.
Floyd 31.01.2011
3 Antworten
1
START TRANSACTION;
SET @rows_count = NULL;
SELECT name, @rows_count := IFNULL(@rows_count, 0) + 1 FROM city LIMIT 10;
ROLLBACK;
30.01.2011
Floyd 11,0k 3 9
1
Hy,

was du suchst ist rownum.

Also, bei einer Abfrage, machst du einfach
select rownum, feld_1, feld_2, (....) from tabelle;

Wenn du ein Update machen willst (also dass die Zahlen IN der Tabelle stehen), legst du erst das Feld (Bsp: neues_feld) als Integer an, danach
update tabelle set neues_feld = rownum;

Und danach packst du dann ein Auto_increment drauf.
31.01.2011
Martin Bassus 486 8
-1
Muss es unbedingt in einer Spalte stehen? Du könntest doch per PHP oder welche Sprache du benutzt den aktuellen Wert ermitteln!?
30.01.2011
Konstantin 3,7k 7

Stelle deine Sql-Frage jetzt!