Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zaskakujące zachowanie funkcji sec_to_time przy sum
jacusek
post
Post #1





Grupa: Zarejestrowani
Postów: 262
Pomógł: 3
Dołączył: 18.10.2009
Skąd: Łódź

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


Witam.
Mam tablę w której w jednej z kolumn trzymam czas połączeń (analiza billingów) w formacie time. I zauważyłem zaskakującą prawidłowość nie wiem z czego wynikającą.
Otóż, kiedy chce zsumować kilka "czasów" i podaje w ten sposób
  1. sum(kolumna_z_czasem)

to oczywiście wynik jest w sekundach, ale niestety nieprawidłowy. Wpadłem na to, ze należy to zmienić na
  1. sec_to_time(sum(kolumna_z_czasem))

ale w sumie to też bzdura, no bo przecież liczy z nieprawidłowej liczby sekund.
Dopiero po takiej formule wyszedł mi prawidłowy wynik:
  1. sec_to_time(sum(time_to_sec(kolumna_z_czasem)))

I teraz właściwie się zastanawiam dlaczego tak się dzieje?
Go to the top of the page
+Quote Post
maly_swd
post
Post #2





Grupa: Zarejestrowani
Postów: 744
Pomógł: 118
Dołączył: 14.02.2009
Skąd: poziome

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


skoro masz jako czas:
1. czas zamieniasz na sekundy
2. sumujesz sekundy
3. sume sekund zamieniasz na czas

sec_to_time(sum(time_to_sec(kolumna_z_czasem)))

Wiec co w tym dziwnego?

Go to the top of the page
+Quote Post
jacusek
post
Post #3





Grupa: Zarejestrowani
Postów: 262
Pomógł: 3
Dołączył: 18.10.2009
Skąd: Łódź

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


zdziwiło mnie, że już druga opcja nie zadziałała od razu prawidłowo. Ale widać tak musi być.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 20:32