Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Odejmowanie wartosci z danej kolumnu z dwoch wierszy "jednocześnie"
Wolfie
post 30.12.2010, 12:18:54
Post #1





Grupa: Zarejestrowani
Postów: 686
Pomógł: 0
Dołączył: 10.11.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


Witam,


Mam mniej wiecej taka strukutre tabeli w bazie

id | ilosc (double) |
----------------------
1 | 2.56
2 | 3
1 | 4


No i teraz powiedzmy ze przychodzi z jakiegos skryptu wartosc 5 dla id 1

I teraz co musze zrobic to odjąc z pierwszego wiersza wszystko, a z 3-go reszte z odejmowania 5 - 2.56 , ale wogole nie wiem jak mam sie za to zabrac, czy trzeba napisac funkcje czy juz moze jest jakas gotowa ?

Poratujcie panowie, nie znam się na bazach,

moze jakies pomocne linki ?

Pozdrawiam
Go to the top of the page
+Quote Post
cojack
post 3.01.2011, 09:56:53
Post #2





Grupa: Zarejestrowani
Postów: 898
Pomógł: 80
Dołączył: 31.05.2008

Ostrzeżenie: (20%)
X----


  1. CREATE FUNCTION "odejmuj_mi_tu" ( "id_wiersza" INT, "ile" DOUBLE ) RETURN VOID AS $$
  2. DECLARE
  3. "_reszta" DOUBLE;
  4. BEGIN
  5. UPDATE "tabela" SET "ilosc" = "ilosc" - "ile" WHERE "id" = "id_wiersza" RETURNING "ilosc" INTO "_reszta";
  6.  
  7. UPDATE "tabela" SET "ilosc" = "ilosc" - "_reszta" WHERE "id" <> "id_wiersza";
  8. END;
  9. $$ LANGUAGE 'plpgsql';


Tam brakuje sprawdzania danych, także sobie dopisz albo i nie.

Wywołanie?

  1. SELECT "odejmuj_mi_tu"( 1, 5::DOUBLE );


--------------------
cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena
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 Wersja Lo-Fi Aktualny czas: 10.06.2025 - 06:23