Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Update kolumny według skomplikowanego warunku
Forum PHP.pl > Forum > Bazy danych > MySQL
miedzna
Mam tabelę o strukturze:

ID | Name | Parent

gdzie są dane:

1 | Jeden | NULL
2 | Dwa | NULL
3 | Trzy | NULL
4 | JedenA | Jeden
5 | JedenAA | JedenA

z tego widać, że zakładki Jeden, Dwa i Trzy mają najwyższy poziom, zakładka JedenA jest podpięta pod Jeden (bo jego parentem jest Jeden), a jednostka JedenAA ma parent JedenA.

Wszystko śmigało do momentu, aż nazwy Parentów zaczęły się powtarzać (o tym nie pomyślałem) a jednostki nadrzędne były deklarowane jako nazwy i to był błąd. Teraz chcę przerobić, żeby w kolumnie Parent zamiast nazw jednostek nadrzędnych znalazły się ID tych jednostek, tylko baza już jest zasilona i nie chcę zmieniać kilka tysięcy rekordów.

Pytanie jest, czy da się jakoś jednym zapytaniem do bazy zamienić nazwy jednostek na ich ID.
coś w stylu: zmień mi wszystkie Parent z nazw słowncyh na ich ID ale najpierw pobierz mi te wszystkie ID, coś jak by zapytanie w zapytaniu?
cojack
No to mi się przypomina baza danych Oscommerce... przesrane jednym słowem i to wszystko tongue.gif
Tylko u Ciebie jeszcze bardziej naknociłeś, w oscommerce jest przynajmniej numercycznie to podane. A Ty użyłeś nazw.. co wg mnie jest błędem.

Odpowiedź nie da się, bo jak masz podgrupy grup czyli:

1A
-- 2A
-- 2B
-- 2C
---- 3A
---- 3B
---- 3C
1B

to masz przekichane, musiałbyś od tyłu jechać, czyli pobierać po najwyższym ID bo to ostatnia grupa, a Ty nie masz tutaj najwyższego ID w parent bo masz nazwy więc kicha tongue.gif Nie przemyślałeś robiąc tą bazę danych, bo trzeba było zrobić tak:
categories_id | parent_id

a później drugą bazę danych:

categories_id | categories_name

i frytki smile.gif Zapraszam do zapoznania się z pdf'em wyglądu bazy danych sklepu oscommerce, do ściągnięcia sklep z oscommerce.pl i wewnątrz jest pdf.

A odpowiedź co do Twojego topica jest już wyżej dana smile.gif
miedzna
To kijowo wyszło sad.gif
Tak to jest, jak się nie myśli przyszłościowo...
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.