Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Ponumerowanie rekordów w bazie liczbami
Matt23
post
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 19.01.2013

Ostrzeżenie: (0%)
-----


Witam zebranych,
chciałbym się dowiedzieć w jaki sposób zrobić update do bazy, aby zmienić ID wszystkim rekordom by owe ID było względem siebie rosnące.

Sprawa wygląda tak, że mam straszne luki w tym id i chciałbym je pozmieniać na rosnące liczby. Jakim poleceniem mogę to zrobić?

Aktualnie mam

ID TABELA
21 Andrzej
47 Grzegorz
67 Anna

Chciałbym to zmienić na

1 Andrzej
2 Grzegorz
3 Anna
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
trueblue
post
Post #2





Grupa: Zarejestrowani
Postów: 6 807
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Dodaj nową kolumnę, np. pole.
  1. UPDATE tabela,(SELECT @id:=0) AS tmp SET pole=(SELECT @id:=@id+1)

Usuń id, zmień pole na id.

Możesz też update'ować samą siebie jeśli masz pewność, że nie nastąpi kolizja (jeśli pole to klucz lub ma indeks unique).

Ten post edytował trueblue 22.07.2014, 19:22:36
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 13:03