![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 194 Pomógł: 2 Dołączył: 12.04.2004 Skąd: Częstochowa Ostrzeżenie: (10%) ![]() ![]() |
Witam. Męczę sie już kilka dni z pewnym zapytaniem.
Robię kalendarz wydarzeń i mam problem z wybieraniem wydarzeń do kalendarza. Zapytanie ma wybrać wszystkie zdarzenia które zaczynają się, trwają lub kończą w podanym czasie widełek daty. Niestety zapytanie wybiera tylko te rekordy które albo zaczynają się albo kończą w podanych widełkach ale nie wybiera tych które trwają w podanych widełkach choć mogą się zaczynać wcześniej lub kończyć później
struktura tabeli głównej
Ten post edytował dado 18.08.2011, 18:15:22 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 248 Pomógł: 31 Dołączył: 14.12.2010 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
spróbuj zrobić subQuery do tego wybierając wszystkie wyniki mające początek mniejszy od start i koniec większy od end
-------------------- Jeżeli pomogłem kliknij "Pomógł" :)
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Cytat spróbuj zrobić subQuery do tego wybierając wszystkie wyniki mające początek mniejszy od start i koniec większy od end Bzdura. Musisz mieć 3 warunki: 1. Data startu pomiędzy Początek i Koniec (czyli koniec może być za datą końcową) 2. Data zakończenia pomiędzy początek a koniec (czyli początek może być przed datą początkową) 3. Data startu mniejsza niż Początek i data zakończenia większa niż koniec (dla tych zadań które obejmują swoim zasięgiem cały zakres) Może jest lepsze rozwiązanie, ale to jest to co mi na tą chwilę przychodzi na myśl ![]() @edit: oczywiście OR'y a dla ostatniego OR ( if1 AND if2 ) Ten post edytował melkorm 18.08.2011, 19:10:06 -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 194 Pomógł: 2 Dołączył: 12.04.2004 Skąd: Częstochowa Ostrzeżenie: (10%) ![]() ![]() |
czyli już sam blok WHERE czy to będzie tak?
Oki zadziałało wyśmienicie dodałem jeszcze w select klauzule pozwalające stwierdzić z którego ora zapytanie skorzystało przy danym rekordzie, wklejam dla tych co kiedys będą tracić godziny przy tym
Ten post edytował dado 19.08.2011, 07:58:02 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 17:27 |