Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zapytanie insert
Forum PHP.pl > Forum > Bazy danych > MySQL
twoakina
Witam.
mam problem ponieważ nie wiem jak mam dodać rekordy do bazy po spełnieniu warunku.
Przykładowa tabela np. auto
Kod
marka        czesc            ilosc
opel        koło_B            4
opel        kierownica        1
skoda        znaczek            1
skoda        kierownica        1
skoda        kolo_Z            4
audi        kolo_Z            4
audi        siedzenie        2

(To nie jest tabela z bazy tak z pamieci napisałem strukturę)
Nie mam problemu zeby dodac nowa czesc do danej marki przy pomocy insert into ... , normalnie robie to przy pomocy "INSERT into auto (...) VALUES (...);" Ale jak mam 50 marek samochodów a chce wprowadzić jakąś część do marek spełniających jakiś szczególny warunek wspólny dla kilku marek to muszę to robić recznie np felga X pasuje do koła Z koncernu VW (czyli do skody i audi ale nie pasuje do opla).Kombinowałem z
insert into
select...
where czesc=kolo_Z
czyli potrzebuje zapytania które doda mi felge_x do marek gdzie występuje kolo_Z
nospor
Moze napisz tak bardziej opisowo o co ci chodzi, bo nie wiem jak inni, ale ja nie mam bladego pojecia co chcesz zrobic
Kshyhoo
A ja chyba wiem, co co chodzi smile.gif Chce dodać rekord, jeżeli pozycja kierownica przyjmie wartość 1.
nospor
Nie kierownica rowna 1, tylko ogolnie kierownica.
Tak czy siak, trzeba opisac problem. Skad te dane, czy to jakis import czy moze zwykle wykonywanie zapytan w php? Jak php to poprostu zwykly IF w php. Ale z tego opisu nic nie wynika.

edit:
@twoakina jesli odpowiadasz na czyjes pytania, to pisz ODPOWIEDŹ a nie edytujesz pierwszego posta w temacie.... Raz, ze glupiow wowczas wygladaja posty poprzednikow a dwa, ze poprzednicy wogole nie wiedza ze cos edytowales.... W temat wszedlem czystym przypadkiem.
Gdy dodajesz ODPOWIEDŹ to wszyscy co brali udzial w dyskusji wiedza, ze cos napisales nowego. Nie boj sie, tu nikt nie rozlicza z ilosci postow, nie musisz ponosic dodatkowych oplat za kazde kolejne 10 postow. wink.gif

Zas co do tematu:
no to pobierz najpierw marki, ktore mają kolo_z i potem do tych marek dodaj felge_x
daggoth
Jeżeli robisz to w PHP proponuję zrobić fetch_assoc z zapytania SELECT * FROM `auto` WHERE `czesc`='koloB' OR `czesc`='felgaZ'
i w pętli dla pobranej marki zrobić inserta wink.gif

coś takiego
  1. while ($q=mysql_fetch_assoc(mysql_query("SELECT * FROM `auto` WHERE `czesc`='koloB' OR `czesc`='felgaZ'")))
  2. {
  3. mysql_query("UPDATE auta SET ilosc=ilosc+1 WHERE `marka`='".$q['marka']."'");
  4. }


Oczywiście zamiast update możne insert smile.gif Z warunkami można kombinować do woli, dając OR (logiczne LUB <<alternatywa>>) bądź AND (logidzne I <<koniunkcja>>)
twoakina
OK.
A jak będzie wyglądać zapytanie nie w php tylko SQL (bezpośrednio w w bazie)
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-2024 Invision Power Services, Inc.