• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Sumowanie wszytskich wartości float z tabeli sql

VPS Starter Arubacloud
+1 głos
569 wizyt
pytanie zadane 20 października 2021 w PHP przez Jacek Śmiel Użytkownik (510 p.)

Witajcie, tworzę skrypt do panelu statystyk w moim hobbistycznym projekcie, ma on na celu pobranie z tabeli sql wartości wszystkich wypłat, które mają status wykonana i ich właścicielem, czuli nick='zihen'. 

Samo pobranie wszystkich wypłat działa dobrze, ale niestety nie mam totalnie pomysłu jak stworzyć funkcję, która po pobraniu wszystkich wypłat doda je do siebie i zapisze w zmiennej. Aktualnie mój skrypt używa pętli while i for, ale to niestety dodaje do siebie tylko wartości dwóch wypłat. Proszę was o naprowadzenia jak ugryźć ten temat ;)

      //suma wszystkich wypłat
      $zapytanie_wszystkie_wyplaty = "SELECT * FROM wyplaty WHERE nick='$nick' AND status='wykonana'";
      $rezultat_wszystkie_wyplaty = mysqli_query($dostep, $zapytanie_wszystkie_wyplaty);

      while($wiersz_wszyscy_userzy = mysqli_fetch_assoc($rezultat_wszystkie_wyplaty)) {
        $kwota_wypłaty_wykonanej = $wiersz_wszyscy_userzy['kwota'];

        for($i = 1; $i <= $ilosc_wykonanych_wyplat; $i++) { //nie działa dodawanie do siebie wartosci wszystkich wyplat!
          $suma_wykonanych_wypłat = $kwota_wypłaty_wykonanej+$kwota_wypłaty_wykonanej;
        }
}

gdzie $ilosc_wykonanych_wyplat wynosi liczbę wszystkich wypłat, które należą do wskazanego użytkownika.

1 odpowiedź

0 głosów
odpowiedź 21 października 2021 przez VBService Ekspert (255,800 p.)
edycja 21 października 2021 przez VBService

Nie potrzebujesz 2 pętli do tego, wystarczy

      //suma wszystkich wypłat
      $zapytanie_wszystkie_wyplaty = "SELECT * FROM wyplaty WHERE nick='$nick' AND status='wykonana'";
      $rezultat_wszystkie_wyplaty = mysqli_query($dostep, $zapytanie_wszystkie_wyplaty);
 
      $suma_wykonanych_wypłat = 0;
      while($wiersz_wszystkie_wyplaty = mysqli_fetch_assoc($rezultat_wszystkie_wyplaty)) {
        $suma_wykonanych_wypłat += $wiersz_wszystkie_wyplaty['kwota'];

co jest odpowiednikiem

$suma_wykonanych_wypłat = $suma_wykonanych_wypłat + $wiersz_wszystkie_wyplaty['kwota']

 

Możesz też z poziomu sql-a

"SELECT SUM(kwota) AS suma_wyplat FROM wyplaty WHERE nick='$nick' AND status='wykonana'"

 

Podobne pytania

0 głosów
2 odpowiedzi 619 wizyt
pytanie zadane 11 kwietnia 2018 w SQL, bazy danych przez hiper007 Stary wyjadacz (11,270 p.)
+2 głosów
0 odpowiedzi 604 wizyt
0 głosów
1 odpowiedź 799 wizyt
pytanie zadane 17 listopada 2016 w PHP przez Sławek Obywatel (1,270 p.)

92,980 zapytań

141,943 odpowiedzi

321,189 komentarzy

62,309 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...