Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: UPDATE z inkrementacją
Forum PHP.pl > Forum > Bazy danych > MySQL
bpawlik
Witam

Mam rowy w tabeli (mysql) utworzone za pomocą zapytania

  1. INSERT
  2. INTO t1 (p1,p2,p3) SELECT r1,r2,r3
  3. FROM t2 WHERE r1=cos_tam GROUP BY r2.


teraz chciałbym w tabeli t1, a dokładnie w polu p4 wstawic dla pewnych rowów wartosci od 1 do n czyli mialoby to wygladac mniej wiecej tak
Kod
t1
p1 | p2 | p3 | p4
a  |b   |c   |1
a  |b   |c   |2
a  |b   |c   |3
a  |b   |c   |4
a  |b   |c   |5
...

zaznaczam, że nie jest dla mnie ważna kolejność rowów z t1 tylko aby wartości p4 były z zakresu 1 do n (bez "dziur")

jak to zrobić w php? a może jakaś procedura w samymy MySQLu?
SongoQ
Hm najlatwiej to a p4 pole inckrementowane. Nie uzywaj rowow tylko rekordow jakos tak zle to brzmi. "Polacy nie gesi jezyk swoj maja"
bpawlik
auto_increment nie bardzo,
bo takich paczek rekordów będę miał wiele w tabeli t1 i każda paczka ma mieć osobną numerację od 1. (a będczie identyfikowana innym polem.

PS. Jeśli chodzi o "rowy" to miał to być tzw. "fun factor" ale okej wrócę do rekordów.
SongoQ
Czyli pozostaje dodatkowy select zeby wyciagnac nastepna wartosc. No chyba ze podzapytaniem zwrocisz sobie.

Do r4 select max() FROM ..............
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.