Как мне отфильтровать объекты со свойствами datetime, используя JMESPath?

Попытка отфильтровать результаты определенных запросов AWS с использованием даты и времени, но при этом ударить о стену.

Результаты будут иметь такую ​​структуру

array(23) {
    ["DBSnapshotIdentifier"]=>
    string(28) "rds:whatever-foo-bar"
    ["DBInstanceIdentifier"]=>
    string(7) "whatever"
    ["SnapshotCreateTime"]=>
    object(Aws\Api\DateTimeResult)#247 (3) {
      ["date"]=>
      string(26) "2019-02-20 03:07:01.269000"
      ["timezone_type"]=>
      int(2)
      ["timezone"]=>
      string(1) "Z"
    }
    ["Engine"]=>
    string(5) "mysql"
    ["AllocatedStorage"]=>
    int(100)
    ["Status"]=>
    string(9) "available"
    ["Port"]=>
    int(13306)
    ["AvailabilityZone"]=>
    string(10) "eu-west-1a"
    ["VpcId"]=>
    string(12) "vpc-3ecd942c"
    ["InstanceCreateTime"]=>
    object(Aws\Api\DateTimeResult)#248 (3) {
      ["date"]=>
      string(26) "2018-05-10 08:02:59.551000"
      ["timezone_type"]=>
      int(2)
      ["timezone"]=>
      string(1) "Z"
    }
  }

И я хотел бы искать, например, по SnapshotCreateTime,

Я пытался сделать:

->search("DBSnapshots[?SnapshotCreateTime >= '2019-02-15']")

Или же

->search("DBSnapshots[?to_string(SnapshotCreateTime) >= '2019-02-15']")

Или даже:

->search("DBSnapshots[?to_string(SnapshotCreateTime) >= '\"2019-02-15\"']")

Но результатом всегда является пустая строка.

Если я уберу фильтр (->search("DBSnapshots[*]")) Я получаю все результаты, которые хочу.

0 ответов

Другие вопросы по тегам