Сравнение дат и время

Этот пример показывает, как сравнить массивы duration и datetime. Можно выполнить поэлементно сравнение значений в двух массивах datetime или двух массивах duration с помощью операторов отношения, таких как > и <.

Сравнение массивов datetime

Сравните два массива datetime. Массивы должны быть одного размера, или можно быть скаляром.

A = datetime(2013,07,26) + calyears(0:2:6)
A = 1x4 datetime array
   26-Jul-2013   26-Jul-2015   26-Jul-2017   26-Jul-2019

B = datetime(2014,06,01)
B = datetime
   01-Jun-2014

A < B
ans = 1x4 logical array

   1   0   0   0

Оператор < возвращает логический 1, (TRUE), где datetime в A происходит перед datetime в B.

Сравните массив datetime с текстом, представляющим дату.

A >= 'September 26, 2014'
ans = 1x4 logical array

   0   1   1   1

Сравнения массивов datetime составляют информацию о часовом поясе каждого массива.

Сравните 1 сентября 2014 в 16:00 в Лос-Анджелесе с 17:00 в тот же день в Нью-Йорке.

A = datetime(2014,09,01,16,0,0,'TimeZone','America/Los_Angeles',...
    'Format','dd-MMM-yyyy HH:mm:ss Z')
A = datetime
   01-Sep-2014 16:00:00 -0700

B = datetime(2014,09,01,17,0,0,'TimeZone','America/New_York',...
    'Format','dd-MMM-yyyy HH:mm:ss Z')
B = datetime
   01-Sep-2014 17:00:00 -0400

A < B
ans = logical
   0

16:00 в Лос-Анджелесе происходит после 17:00 в тот же день в Нью-Йорке.

Сравнение длительности

Сравните два массива duration.

A = duration([2,30,30;3,15,0])
A = 2x1 duration array
   02:30:30
   03:15:00

B = duration([2,40,0;2,50,0])
B = 2x1 duration array
   02:40:00
   02:50:00

A >= B
ans = 2x1 logical array

   0
   1

Сравните массив длительности с числовым массивом. Элементы в числовом массиве обработаны как много фиксированных длин (24-часовые) дни.

A < [1; 1/24]
ans = 2x1 logical array

   1
   0

Определите, содержатся ли Даты и Время В Интервале

Используйте функцию isbetween, чтобы определить, лежат ли значения в массиве datetime в закрытом интервале.

Задайте конечные точки интервала.

tlower = datetime(2014,08,01)
tlower = datetime
   01-Aug-2014

tupper = datetime(2014,09,01)
tupper = datetime
   01-Sep-2014

Создайте массив datetime и определите, лежат ли значения в интервале, ограниченном t1 и t2.

A = datetime(2014,08,21) + calweeks(0:2)
A = 1x3 datetime array
   21-Aug-2014   28-Aug-2014   04-Sep-2014

tf = isbetween(A,tlower,tupper)
tf = 1x3 logical array

   1   1   0

Смотрите также

Похожие темы