我正在对 Rethinkdb 进行以下查询:
r.table('skydata').filter(r.row("DeviceID").eq("JBAnFrdlbkcO").and(r.row("TS").ge(0)).and(r.row("TS").le(143556949)) ).orderBy("TS")
当直接在他们网站上的 Data Explorer 上运行并返回结果时,它运行完美。然而,当我在我的 Python 程序中进行相同的查询时,我什么也没得到。我写的查询是:
records = rdb.table('skydata').filter( (rdb.row['DeviceID'] == 'JBAnFrdlbkcO') & (rdb.row['TS'] >= '0') & (rdb.row['TS'] <= '143556949') ).order_by('TS').run(conn)
这里records
返回的是空的。我认为这两个是等价的。我也尝试过直接向服务器发送 JS 命令:
records = rdb.js("r.table('skydata').filter(r.row('DeviceID').eq(%s).and(r.row('TS').ge(%s)).and(r.row('TS').le(%s)) ).orderBy('TS')" % (deviceid, time_start, time_end) ).run(conn)
但它说:r is not defined
我真的不知道为什么会这样。如果有人可以提供帮助,我将不胜感激。谢谢。