Autor Zpráva
bouda
Profil *
Zdravím,
v tématu http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=28&topic=7 2976
se řeší, jak vybrat záznamy z určitého intervalu. Mam podobný problém.

datum záznamu určuje časový interval datum_od a datum_do. Potřeboval bych
dotaz, který vybere záznamy, které budou jakkoliv zasahovat do určeného časového
intervalu (viz.

  
|____interval zaznamu 1_____|
                        |____int. za.2____|
                                                                    |____int. za.3____|
          |_______casovy interval________|


záznamy 1 a 2 potřebuji vybrat, záznam 3 ne

děkuji za každou radu.
TSD
Profil *
Sám sis to namaloval, stačí to jen přepsat do textu

Pokud __casovy interval__ bude vymezen body XX a YY, tak potřebuješ toto:

zasahuje = X1<YY and Y1>XX

Případné zamyšlení se nad náhradou > za >= ti rád přenechám :)
nightfish
Profil
interval_start a interval_end - datumy, proti kteremym chces porovnavat
datum_od, datum_do - sloupce typu date, určující intervaly jednotlivých záznamů
select sloupce from tabulka where cast(interval_start as date) between datum_od and datum_do or
cast(interval_end as date) between datum_od and datum_do
Kajman_
Profil *
nightfish

Nedostanou se tam intervaly, které jsou uvnitř hledaného intervalu.

Rychlejší a přesnější bude verze od TSD.

Probíralo se to i např. v
http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=28&topic=6 9880
nightfish
Profil
Kajman_
Nedostanou se tam intervaly, které jsou uvnitř hledaného intervalu.
vidíš, na ty jsem nějak zapomněl

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0