Mam następującą tabelę oznaczającą nauczyciela uczącego uczniów w małych grupach. Każdy uczeń ma wpis do bazy danych. Uczeń może być sam lub w grupie. Chciałbym obliczyć "wynagrodzenie" opiekuna jako takie: opłata jest oparta na czasie spędzonym - oznacza to, że na każde posiedzenie (z jednym lub więcej uczniów) zostanie obliczone tylko jedno posiedzenie - odrębne posiedzenia! Czasy rozpoczęcia i zakończenia to czasy unix.Oblicz wynagrodzenie opiekuna na podstawie różnych posiedzeń przy użyciu mysql
<pre>
start end attendance
1359882000 1359882090 1
1359867600 1359867690 0
1359867600 1359867690 1
1359867600 1359867690 0
1360472400 1360477800 1
1360472400 1360477800 1
1359867600 1359867690 1
1359914400 1359919800 1
1360000800 1360006200 1
1360000800 1360006200 0
1360000800 1360006200 1
</pre>
To co próbowałem: bez powodzenia - Nie mogę uzyskać odpowiedni czas (liczbę godzin dla wszystkich odrębnych posiedzeń)
SELECT YEAR(FROM_UNIXTIME(start)) AS year, MONTHNAME(STR_TO_DATE(MONTH(FROM_UNIXTIME(start)), '%m')) AS month, COUNT(DISTINCT start) AS sittings, SUM(TRUNCATE((end-start)/3600, 1)) as duration FROM schedules GROUP BY YEAR(FROM_UNIXTIME(start)), MONTH(FROM_UNIXTIME(start))
Thanks for your wniosków/wsparcie!
EDIT: Wymagane wyniki
Rate = 25
Year Month Sittings Duration Bounty
2013 February 2 2.2 2.2*25
2013 April 4 12.0 12.0*25
+1 za zamieszczanie informacji o tym, co wypróbowałeś/aś –
Czy możesz również zamieścić żądany wynik? –
@JW właśnie dodał pożądany wynik. Czas trwania jest oparty na końcu)/3600 odrębnych posiedzeń – dorogz