OrientDB:在WHERE子句中检查LET变量

时间:2018-09-18 10:30:04

标签: where orientdb let

我正在尝试向其中编写OrientDB批处理脚本

  1. 从特定记录(T1)中提取DateTime
  2. 将DateTime增加一定量(T2)
  3. 搜索日期时间在T1和T2之间的记录

    BEGIN
    LET T1 =从MyClass那里选择时间AS值WHERE id = someID
    LET T2 = SELECT sum(first($ T1.value).asLong(),someTime).asDateTime()作为值
    选择*从MyClass中,时间> $ T1且时间<$ T2
    提交

只要我在WHERE子句中不使用$ T1和$ T2(或$ T1.value,$ T2.value),但是像“ 2018-01-01 00:00:00 ”。为了更好地理解“ 2018-01-01 00:00:00”和$ T1 / $ T2(或$ T1.value / $ T2.value)之间的区别,我添加了RETURN $ T1 / $ T2(或$ T1)。值/$T2.value),并通过Studio收到了完全相同的字符串。

那么为什么我可以在WHERE子句中使用手写字符串,而不使用某些自定义变量的值?

我必须如何重写脚本才能按预期工作?

0 个答案:

没有答案