Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]LEFT JOINT + SUM.
Forum PHP.pl > Forum > Przedszkole
casperii
Panowie, próbuje zesumować pewnie wartości z bazy łącząc 2 tabele, problem pojawia się z chwilą gdy w drugiej tabeli (potracenia) są 2 wpisy o tej samej dacie:

  1. SELECT SUM( (time_to_sec(`p`.`od`) - time_to_sec(`p`.`do`))/3600) AS `godzin`, SUM(`d`.`potracenie`) AS potracenia FROM `wyplaty` AS `p` LEFT JOIN `potracenia` AS `d` ON `d`.`login` = `p`.`login`AND `d`.`date` = `p`.`date` WHERE `p`.`login` = '".UserSelected()."' AND `p`.`date` >= DATE_SUB('".year()."-".month()."-01', INTERVAL 1 MONTH) AND `p`.`date` <= LAST_DAY(DATE_SUB('".year()."-".month()."-01', INTERVAL 1 MONTH))


wówczas ilość godzin zwiększa się o tyle godzin ile wyliczyło się z pól od - do w danym dniu.
trueblue
Podziel sumę przez COUNT(*)

Na razie nie usuwam powyższego, choć doczytałem wyjaśnienie pod. Na jakim wyniku w takim razie Ci zależy w takiej sytuacji?
casperii
Chce wiedzieć ile w danym miesiącu jest godzin , które później sobie pomnożę przez stawkę, dodatkowo chcę znać łączną kwotę potrąceń z drugiej tabeli.
Jednym słowem nie chce by mi dublowało godziny w pierwszej tabeli wypłaty jeżeli w drugiej tabeli potrącenia mam więcej potrąceń niż 1 w danym dniu.

tabela wyplaty:
login, data, od, do, stawka

tabela potracenia
login, data, potracenie

Teraz chce pobrać takie o to wyniki :

łącznie godzin, łączna kwota (czyli $godzin * $stawka) oraz łącznie potrącenia.
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-2025 Invision Power Services, Inc.