Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: UPDATE table1 na podstawie table2
Forum PHP.pl > Forum > Bazy danych > MySQL
mickula
Mam dwie tabele w bazie:
`experience`
Kod
+-----+------------+-------+---+
| pid  | exp           | level  |id  |
+-----+------------+-------+---+
| 301 |430141690 |   207 | 1  |
| 301 |363918727 |   381 | 2  |
+-----+------------+------+----+


oraz
`character`
Kod
+-----+------------+-------+
| id    | name          | level  |
+-----+------------+-------+
| 301 | Gracz1        |   207  |
| 302 |Gracz Drugi|   281 |
+-----+------------+------+


Jak szybko zrobić update kolumny `level`? Gdzie
  1. `experience`.`pid` = `character`.`id`

A ten aktualny 'level' przechowywany jest w tabeli experience, z najwyższym id (AI). (Dla gracza o id 301 i name Gracz 1 aktualny level to 381.
Siedzę z tym od wczoraj i nic nie mogę wykombinować.
erix
A może byś tak znormalizował bazę? Po co zapisujesz kilka razy te same dane?
mickula
Miejsca mam wystarczająco dużo w bazie smile.gif Spodziewam się dużej ilości odsłon, dlatego wyniki zapytań cachuje. Dodatkowo, level w tabeli `experience` może się zmieniać w ciągu dnia a ja potrzebuje go tylko z jednego update bazy. Tego jednego konkretnego.

Zapytaj o żarówkę a na tym forum dostaniesz odpowiedź, że lepiej powiększyć okna.
erix
Cytat
Miejsca mam wystarczająco dużo w bazie

Nie chodzi o miejsce w bazie: http://pl.wikipedia.org/wiki/Normalizacja_bazy_danych. Przeczytasz, to porozmawiamy.

Cytat
Zapytaj o żarówkę a na tym forum dostaniesz odpowiedź, że lepiej powiększyć okna.

Bo robisz tak, jak się nie powinno robić.
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.