# Test for less and greater than drop target/tests/querytestranges; create target/tests/querytestranges; add {"_id":"one", "A":12}; "one" add {"_id":"two", "A":12}; "two" add {"_id":"three", "numberarray": [30, 60, 90]}; "three" add {"_id":"four", "A":-3}; "four" add {"_id":"five", "A":35}; "five" add {"_id":"six", "A":true}; "six" add {"_id":"seven", "A":false}; "seven" add {"_id":"eight", "A":null}; "eight" add {"_id":"nine", "boolarray":[true, true]}; "nine" add {"_id":"ten", "boolarray":[false, true]}; "ten" # Exact match number find {A: ==12}; [ "one", "two" ] find {numberarray: [==60]}; [ "three" ] del one; ok find {A: ==12}; [ "two" ] # Greater than (equal) on number find {A: >20}; [ "five" ] find {A: >-5}; [ "two", "four", "five" ] find {numberarray: [>40]}; [ "three" ] find {A: >35}; [] find {A: >=35}; [ "five" ] # Less than (equal) on number find {A: <-1}; [ "four" ] find {A: <20}; [ "two", "four" ] find {numberarray: [<70]}; [ "three" ] find {A: <-3}; [] find {A: <=-3}; [ "four" ] # Range on number find {A: >10, A: <20}; [ "two" ] find {A: >-10, A: <20}; [ "two", "four" ] # Exact match boolean find {A: ==true}; [ "six" ] find {A: ==false}; [ "seven" ] find {A: ==null}; [ "eight" ] find {boolarray: [==true]}; [ "nine", "ten" ] # scoring find {A: ==true} return score(); [ 1 ] find {A: ==false} return score(); [ 1 ] find {A: ==null} return score(); [ 1 ] find {boolarray: [==true]} return score(); [ 1, 1 ] find {A: >10, A: <20} return score(); [ 1 ] find {A: >-10, A: <20} return score(); [ 1, 1 ] find {A: <-1} return score(); [ 1 ] find {A: <20} return score(); [ 1, 1 ] find {numberarray: [<70]} return score(); [ 1 ] find {A: <-3} return score(); [] find {A: <=-3} return score(); [ 1 ] find {A: >20} return score(); [ 1 ] find {A: >-5} return score(); [ 1, 1, 1 ] find {numberarray: [>40]} return score(); [ 1 ] find {A: >35} return score(); [] find {A: >=35 || NotAField: ==50} return score(); [ 0.25 ] find {A: >=35 && NotAField: ==50} return score(); [] find {A: ==12} return score(); [ 1 ] find {numberarray: [==60]} return score(); [ 1 ]