在 OrientDB 中获取日期时间差异

Getting DateTime difference in OrientDB

我有以下 orientDB 的 Carts table 模式。我只想 select 那些

的记录
(CurrentTime - timeStamp) >= expiration

我也曾尝试通过转换为 unix 时间戳来实现我的目标,并尝试了以下查询

SELECT * FROM Carts WHERE eval("('+new Date().getTime()+' timeStamp.asLong())/1000") >= expiration

也通过以下技术,但是当 :parameter 在 eval 函数中传递时,它会将其转换为 '?'并且 return 不需要数据。

db.query(
        'SELECT eval("'+new Date().getTime()+' - timeStamp.asLong()") as DIFF, :nowTimeStamp as NOW, timeStamp.asLong() as THEN FROM Carts ',
        {
            params: {
                nowTimeStamp: new Date().getTime()
            }
        }).then(callback);

试试这个查询:

SELECT * FROM Carts WHERE eval("SYSDATE().asLong() / 1000 - timeStamp.asLong() / 1000") >= expiration

希望对您有所帮助。