[MySQL][PHP]Czas UNIXowy z podziałem na dzień i na noc |
[MySQL][PHP]Czas UNIXowy z podziałem na dzień i na noc |
13.12.2017, 17:47:55
Post
#1
|
|
Grupa: Zarejestrowani Postów: 427 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) |
Witam mam pytanie jak z bazy danych gdzie mam pole zawierające datę i godzinę w systemie UNIXowym 1513180800, 1513184400 itp wyciągnąć rekordy które przypisane są do dnia i do nocy.
Rekordy w bazie aktualizują się co godzinę. |
|
|
13.12.2017, 18:09:24
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 457 Pomógł: 6296 Dołączył: 27.12.2004 |
No to wybierasz rekordy, ktore sa miedzy jedna a druga godzina. w czym problem?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
13.12.2017, 18:12:53
Post
#3
|
|
Grupa: Zarejestrowani Postów: 427 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) |
No tak ale w bazie danych mam rekordy na 7 dni co godzinę.
Chciałbym aby np. dzień był od godziny 07:00 do 19:00 i noc od 19:00 do 07:00 Czyli Dzień 1: 07:00 - 19:00 (07:00, 08:00, 09:00, 10:00, 11:00, 12:00, 13:00, 14:00, 15:00, 16:00, 17:00, 18:00) Noc 19:00 - 07:00 (19:00, 20:00, 21:00, 22:00, 23:00, 00:00, 01:00, 02:00, 03:00, 04:00, 05:00, 06:00) Dzień 2: 07:00 - 19:00 (07:00, 08:00, 09:00, 10:00, 11:00, 12:00, 13:00, 14:00, 15:00, 16:00, 17:00, 18:00) Noc 19:00 - 07:00 (19:00, 20:00, 21:00, 22:00, 23:00, 00:00, 01:00, 02:00, 03:00, 04:00, 05:00, 06:00) Dzień 3: 07:00 - 19:00 (07:00, 08:00, 09:00, 10:00, 11:00, 12:00, 13:00, 14:00, 15:00, 16:00, 17:00, 18:00) Noc 19:00 - 07:00 (19:00, 20:00, 21:00, 22:00, 23:00, 00:00, 01:00, 02:00, 03:00, 04:00, 05:00, 06:00) Dzień 4: 07:00 - 19:00 (07:00, 08:00, 09:00, 10:00, 11:00, 12:00, 13:00, 14:00, 15:00, 16:00, 17:00, 18:00) Noc 19:00 - 07:00 (19:00, 20:00, 21:00, 22:00, 23:00, 00:00, 01:00, 02:00, 03:00, 04:00, 05:00, 06:00) Dzień 5: 07:00 - 19:00 (07:00, 08:00, 09:00, 10:00, 11:00, 12:00, 13:00, 14:00, 15:00, 16:00, 17:00, 18:00) Noc 19:00 - 07:00 (19:00, 20:00, 21:00, 22:00, 23:00, 00:00, 01:00, 02:00, 03:00, 04:00, 05:00, 06:00) Dzień 6: 07:00 - 19:00 (07:00, 08:00, 09:00, 10:00, 11:00, 12:00, 13:00, 14:00, 15:00, 16:00, 17:00, 18:00) Noc 19:00 - 07:00 (19:00, 20:00, 21:00, 22:00, 23:00, 00:00, 01:00, 02:00, 03:00, 04:00, 05:00, 06:00) Dzień 7: 07:00 - 19:00 (07:00, 08:00, 09:00, 10:00, 11:00, 12:00, 13:00, 14:00, 15:00, 16:00, 17:00, 18:00) Noc 19:00 - 07:00 (19:00, 20:00, 21:00, 22:00, 23:00, 00:00, 01:00, 02:00, 03:00, 04:00, 05:00, 06:00) Ten post edytował brzanek 13.12.2017, 18:15:50 |
|
|
13.12.2017, 18:27:12
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 457 Pomógł: 6296 Dołączył: 27.12.2004 |
No i wczym problem? Ustawiasz warunek na godzine od i do i jedziesz
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
13.12.2017, 18:29:15
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Tworzysz więc dodatkowe kryterium podziału, czyli dzień.
A dzień uzyskasz z WEEKDAY(data)+1. Jak zaczniesz myśleć o tym, że Twoje czasy UNIX-owe, to po prostu data+czas, to może Ci się rozjaśni. -------------------- |
|
|
13.12.2017, 18:33:22
Post
#6
|
|
Grupa: Zarejestrowani Postów: 427 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) |
No tak tylko jaki to warunek bo przecież czas UNIXowy będzie co godzinę się zmieniał
Dzisiaj godzina 19:00 to 1513188000 Jutro godzina 19:00 to będzie 1513274400 A 24.12.2017 godzina 19:00 to będzie 1514138400 Więc jak powinien wyglądać ten warunek od 07:00 do 19:00? |
|
|
13.12.2017, 18:42:23
Post
#7
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Od 07:00 do 19:00 jakiego dnia? Obojętnie jakiego?
-------------------- |
|
|
13.12.2017, 18:46:28
Post
#8
|
|
Grupa: Zarejestrowani Postów: 427 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) |
Generalnie to obojętnie jakiego bo potrzebował będę wyciągnąć dane z dzisiaj, jutro, pojutrze itd.
|
|
|
13.12.2017, 18:48:31
Post
#9
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
No, to już Ci nospor napisał - wybierasz rekordy z danego zakresu godzinowego.
Zamień czas unixowy na datę, a z daty wyciągnij czas. -------------------- |
|
|
13.12.2017, 20:13:48
Post
#10
|
|
Grupa: Zarejestrowani Postów: 427 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) |
ok mam już w bazie samą godzinę w formacie np: 18:00 ; 19:00 itd.
Jak teraz powinno wyglądać zapytanie do BD które będzie zawierało przedział od 19:00 do 07:00 i kolejne od 07:00 do 19:00 |
|
|
13.12.2017, 20:24:10
Post
#11
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
W bazie masz samą godzinę? A po co?
Zaglądasz czasem do dokumentacji? https://dev.mysql.com/doc/refman/5.5/en/dat...n_from-unixtime https://dev.mysql.com/doc/refman/5.5/en/dat...l#function_time -------------------- |
|
|
14.12.2017, 08:06:14
Post
#12
|
|
Grupa: Zarejestrowani Postów: 427 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) |
Jak już mam w bazie godzinę w formacie hh:mm to już niech tak zostanie.
Teraz zrobiłem takie zapytanie
Ale nic się nie wyświetla. Ok już mam
Teraz tylko jak zrobić aby rekordy nie powtarzały się i aby można było wyciągnąć dane z jutrzejszego dnia również z tych samych godzin. Ten post edytował brzanek 14.12.2017, 08:21:50 |
|
|
14.12.2017, 08:28:53
Post
#13
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Nie wiem jak uzyskujesz prawidłowy wynik, skoro godziny to stringi.
Jeśli mają się nie powtarzać, to musisz je jakoś pogrupować. Według czego chcesz grupować? -------------------- |
|
|
14.12.2017, 08:50:24
Post
#14
|
|
Grupa: Zarejestrowani Postów: 427 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) |
Zrobiłem tak
Ale nic się nie wyświetla |
|
|
14.12.2017, 09:21:51
Post
#15
|
|
Grupa: Zarejestrowani Postów: 859 Pomógł: 177 Dołączył: 29.10.2009 Ostrzeżenie: (0%) |
W zmiennej $start oraz $koniec musi być czas unixowy...
dzisiaj: wczoraj: jutro: za 5 dni Ten post edytował aras785 14.12.2017, 09:24:54 |
|
|
14.12.2017, 09:54:37
Post
#16
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Najpierw WHERE potem GROUP BY.
-------------------- |
|
|
14.12.2017, 13:13:13
Post
#17
|
|
Grupa: Zarejestrowani Postów: 427 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) |
Wielkie dzięki - pomogło
|
|
|
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 04:48 |