Database
[{"addr":"address1","book":"book1",points:34},{"addr":"address2","book":"book1",points:340},{"addr":"address1","book":"book5",points:3400},{"addr":"address1","book":"book2",points:2340},{"addr":"address3","book":"book9",points:1340},{"addr":"address2","book":"book5",points:140},{"addr":"address2","book":"book1",points:1400},{"addr":"address1","book":"book1",points:2400},{"addr":"address15","book":"book1",points:310},{"addr":"address9","book":"book99",points:130},{"addr":"address90","book":"book33",points:1370}]
Query
db.collection.aggregate([{$project:{_id:0,name:1,points:1,level:{$switch:{branches:[{case:{$lte:["$points",250]},then:1},{case:{$and:[{$gt:["$points",250]},{$lt:["$points",500]}]},then:2},{case:{$and:[{$gt:["$points",500]},{$lt:["$points",3000]}]},then:3},],default:4}}}}])