Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zapytanie SQL
Warmix
post
Post #1





Grupa: Zarejestrowani
Postów: 173
Pomógł: 0
Dołączył: 13.06.2011

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


Witam, mam problem.

Mam tabelę "users", ma ona pola: "user_id" oraz "ilosc". Dodaję rekordy: 1, 1; 2, 2; 1, 1. W PHP chciałbym zrobić coś takiego:
Chciałbym przy użyciu UPDATE usuwać wartości z "ilosc", jeżeli user_id = 1. Więcej: jeżeli zapytanie znajdzie w polu "user_id" wartość 1, to odejmuje od "ilosc" -1, z tym, że jeżeli w polu "ilosc" jest wartość 0, to opuszcza ten rekord i sprawdza kolejny. I oczywiście Limit 1 musi buc, aby za jednym razem odejmowało tylko -1 z jednego pola. Czyli jak mam user_id = 1, ilosc = 1, to odejmie z pola ilosc -1 i zostanie 0. Przy kolejnym wykonaniu zapytania ponownie widzi ten rekord user_id = 1, ale widzi wartość w "ilosc = 0" to opuszcza to pole i nie usuwa z niego -1, ale dalej widzi kolejny rekord z user_id = 1, i ponownie jest "ilosc = 1" to usuwa z tego pola itd. Jeżeli we wszystkich polach "ilosc" jest wartość 0, to tak jakby nie wykonywało zapytania.
Prosiłbym także o kawałek kody php, który by to sprawdzał.

Mam nadzieję, że jasno to napisałem, w razie czego, to piszcie, spróbuję to przybliżyć...
Go to the top of the page
+Quote Post
peter13135
post
Post #2





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


hmm. a jak jest id 2, to ma odjąć 1, czy 2 ?
Bardzo namieszałeś, daj mi przykład jaki ma być wynik dla takiej tabeli :

user_id | ilość
1 | 0
1 | 1
1 | 2
2 | 0
2 | 1
2 | 2
3 | 0
3 | 1
3 | 2
1 | 5
1 | 1


--------------------
:)
Go to the top of the page
+Quote Post
Warmix
post
Post #3





Grupa: Zarejestrowani
Postów: 173
Pomógł: 0
Dołączył: 13.06.2011

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


Ma odejmować -1 z pola "ilosc" tylko i wyłącznie z "user_id" = 1.

Go to the top of the page
+Quote Post
peter13135
post
Post #4





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


  1. UPDATE users SET value=value-1 WHERE value>0 AND user_id=1

podziwiam specjalistów z DW ;p


--------------------
:)
Go to the top of the page
+Quote Post
Warmix
post
Post #5





Grupa: Zarejestrowani
Postów: 173
Pomógł: 0
Dołączył: 13.06.2011

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


dzięki działa...

wiesz, jak szukam pomocy, to jednocześnie na kilku forach biggrin.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 10:22