0

Rethinkdb で次のクエリを実行しています。

r.table('skydata').filter(r.row("DeviceID").eq("JBAnFrdlbkcO").and(r.row("TS").ge(0)).and(r.row("TS").le(143556949)) ).orderBy("TS")

Web サイトの 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のように述べています。誰かが助けてくれれば本当にありがたいです。ありがとう。

4

1 に答える 1

0

議論で述べたように、文字列でない限り、クエリ内の数字を引用符で囲むべきではありません。数字の引用を外してください。

于 2015-07-09T23:39:04.293 に答える