SORU
28 Kasım 2008, Cuma


İki Tarih Aralığını Çakışma Olup Olmadığını Belirlemek

İki tarih aralığını dikkate alındığında, iki tarih aralıkları çakışma olup olmadığını anlamak için en verimli en kolay yolu nedir?

Örnek olarak, aralıkları DateTime değişken tarafından belirtilen diyebiliriz EndDate1 StartDate1veEndDate2 StartDate2.

CEVAP
28 Kasım 2008, Cuma


ConditionA Tamamen Sonra DateRange Bir B DateRange Anlamına gelsin
_ |---- DateRange A ------| |---Date Range B -----| _
(StartA > EndB True)

ConditionB DateRange Tamamen DateRange B Önce Anlamına bakalım
|---- DateRange A -----| _ _ |---Date Range B ----|
(EndA < StartB Eğer doğruysa)

Daha sonra ise, kendisi De Bir B doğruysa - Örtüşme var
(Eğer bir dizi tamamen başka ne vardır
ne de tamamen başka önce onlar gerekir sonra da örtüşüyor.)

Şimdi deMorgan Yasası diyor ki:

Not (A Or B) <=>Not A And Not B

10* *çevirir

NOT: Bu kenarların tam olarak üst üste geldiği koşulları içerir. Eğer çıkarmak isterseniz
** 12 < 13 >= operatörler değiştirin

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • fast2hell

    fast2hell

    16 AĞUSTOS 2006
  • Tips On Linux

    Tips On Linu

    26 Temmuz 2008