如何处理ArangoDB / AQL中的过期数据

时间:2014-06-25 06:39:10

标签: arangodb

我有一个包含会话数据的集合,其中包含生存时间标志。我想使用AQL来查询会话数据,但我需要确保只返回“实时”会话。是否可以根据生存时间属性限制查询。

示例条目是

  {
    user: "marc",
    sessionData: {},
    expires: 1403678241
  }

AQL:

FOR u IN users FILTER u.user == "marc" return u
只有在未达到到期时,

才会返回用户。

1 个答案:

答案 0 :(得分:3)

您可以使用AQL中的DATE_NOW()函数来检索时间戳 “现在”。要将其转换为可读的内容,您可以使用 DATE_ISO8601(DATE_NOW())。这需要ArangoDB 2.1或更高版本。

请注意上述工作与UTC / Zulu时间,没有 调整夏令时或时区。

您可以在查询中使用DATE_NOW,如下所示

FOR u IN users FILTER u.user == "..." and u.expires >= DATE_NOW() return u