Mam tabelę w mysql:
CREATE TABLE `nadgodziny` ( `id_nad` SMALLINT(6) NOT NULL AUTO_INCREMENT, `id_prac` VARCHAR(2) NULL DEFAULT NULL, `data_pocz` DATETIME NOT NULL, `data_kon` DATETIME NOT NULL, `id_lek` VARCHAR(5) NULL DEFAULT NULL, PRIMARY KEY (`id_nad`) ) COLLATE='utf8_general_ci' ENGINE=InnoDB
Najistotniejsze są kolumny data_pocz i data_kon.
Większość dat zaczyna się w dzień powszedni o 20:00 - czyli zapis wygląda następująco '2010-02-01 20:00' i kończy powiedzmy '2010-02-01 21:20'
Kiedy zadaję następujące pytanie
SELECT date_format(data_pocz,'%Y-%m-%d') AS DATA, floor((time_to_sec(data_kon-data_pocz))/3600) AS godziny, round((time_to_sec(data_kon-data_pocz)/60),0)%60 AS minuty FROM nadgodziny WHERE id_prac IS NOT NULL GROUP BY 1;
to wszystko działa do momentu kiedy w tabeli mam sobotę i np takie wartości
'2010-03-13 08:45' '2010-03-13 08:45' Tutaj kompletnie wariuje albo pokazuje null, albo nie liczy drugiej kolumny. Kombinowałem już z takimi opcjami żeby zmienić zapis na taką formę
ale to niestety też nie pomaga.
(time_to_sec(data_kon)-time_to_sec(data_pocz)/60)