Zapytanie wybierjące rekordy z określonewj daty

0

Mam taki problem musze wybrać rekordy, które są w odpowiednim przedziale czasowym

Czyli mamy rekordy które są np w takim przedziale czasowym np jest data_start 2019-05-03 1200 date_end 2019-05-03 1300

I teraz chcemy wybrac rekordy które mieszczą się w granicach między godziną 13 a 14 to takie zapytanie

* where hour(time(date_start)) >= 13 and hour(time(date_end)) <= 14

Nam tego rekordu nie wybierze ponieważ
Ale z kolei takie zapytanie

* where hour(time(date_start)) >= 13 or hour(time(date_end)) <= 14

Nam wybierze tych rekordów za dużo i teraz czy da się to jakoś wybrać ?

0

Dlaczego nie napiszesz po prostu date_start > '2019-05-03 12:00:00' AND date_end < '2019-05-03 13:20:00'?

0

Przejdźmy do postów, ponieważ trochę za daleko polecieliśmy w komentarzach.

Powoli: masz problem z pobraniem danych z bazy danych czy przetworzeniem ich po stronie PHPa?

0
Patryk27 napisał(a):

Przejdźmy do postów, ponieważ trochę za daleko polecieliśmy w komentarzach.

Powoli: masz problem z pobraniem danych z bazy danych czy przetworzeniem ich po stronie PHPa?

Z pobraniem danych.

0

Ok, zatem raz jeszcze - pomijając wszystko związane z Twoim skryptem PHP - dlaczego nie napiszesz po prostu date_start > '2019-05-03 12:00:00' AND date_end < '2019-05-03 13:20:00'?

1

Ach, teraz ma to sens ;-)

Może coś takiego:

WHERE
   hour(time(date_start)) BETWEEN 13 AND 14 OR
   hour(time(date_end)) BETWEEN 13 AND 14

1 użytkowników online, w tym zalogowanych: 0, gości: 1