2013-12-20 23 views
0

我是新手腳本。我想知道如何結合條件查詢中的「大於或等於」和「小於或等於」。看看谷歌的網站,我看到你可以選擇greaterThanOrEqualTo(value)和lessThanOrEqualTo(value),但我想知道如何將它們結合在if和/或語句中。當我這樣做:ScriptDB:如何執行值範圍查詢? (包含和排他)

db.query({myvalue: greaterThanOrEqualTo(value), 
      myvalue: lessThanOrEqualTo(value)}) 

我的結果忽略了第一部分,greaterThanOrEqualTo(值)。我已經完成了使用between(value1,value2)方法的工作,但是如果我正在執行獨佔範圍,我認爲它不會起作用。

回答

-1

腳本數據庫查詢引擎是一個非常簡單的查詢引擎,並沒有您要查找的功能。不過,我可以建議的替代,使用查詢

db.query({myvalue: greaterThanOrEqualTo(value) 

然後你需要通過ScriptDbMap查詢結果進行迭代,然後先拿到MapItems做的,如果檢查的第二個條件,如果真的推它到最後的名單。

+0

因此,我認爲沒有辦法嵌套或組合條件得到我想要的。如果不是,我猜你的建議是我唯一的選擇。謝謝。 – user2943227

+0

不,我們不能爲相同的屬性使用條件,您可以使用AND,但僅適用於不同的屬性。 –

0
+0

是的,我一直在使用between(value1,value2)方法,其中我必須採取用戶輸入的最大值,並增加一個。 '之間'似乎排除了最大值。例如:如果我正在查找從5到7的值,我必須將「之間(5,8)」放入以包含這些記錄的7。我不知道如何使用between方法來排除範圍如果有一種方法可以嵌套條件,那麼也許 – user2943227

+0

一個排他性的例子說小於5但大於7的一切。謝謝。 – user2943227

+0

小於5 +大於7 =空:)如果在使用開放範圍之間,你可以在4.999999和7.000001之間做一些事情。這是AND情況,對於原始問題中的OR,您需要執行兩個查詢。 –