Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL]Update tabeli jezeli spełnony zostanie warunek z drugiej tabeli
wrc1000
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 29.02.2012

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


Witam

Prosze o podpowiedź.

Mam do zrealizowania zadanie zmiany wartości kolumny cena znajdującej się w tabeli prodct ale tylko w jednej kategorii (druga tabela ).

Kategorie zapisane są w 2 tabeli o nazwie category nazwa kolumny id_category
Potrzebuje zmienić ceny w kategori 3.


Tworze zapytanie które jednak zmienia mi wszystkie ceny w całej bazie.


update product SET product.cena =product.cena+5 WHERE category.id_category=3

Gdzie błąd ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Czy zawsze gdy chce zrobic update jednej tabeli w oparciu o dane z drugiej musze dokonac takiego porownania jak w przypadku product_id ?
Nie, nie musisz. Teraz musiałeś bo jedno pole nazywało się category_id a tego mysql nie toleruje...... (IMG:style_emoticons/default/wink.gif)

Oczywiście że musisz.

Cytat
robi update dla wszystkich cen z kazdej kategorii.
Bo nie zrobiłeś powiązania miedzy tabelami.

Zrób sobie select z dwóch dabel bez powiązania ich w where a zobaczysz ze dostaniesz zdecydowanie wiecej danych niż oczekiwales.
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: 9.10.2025 - 15:12