我在 MySQL 数据库中有区域表,如果我执行以下查询,它会很好地工作并返回记录:
SELECT *
FROM zones
WHERE zone_structure_id = 2
AND country_code='CA'
AND 'B2H5E1' between from_postal_code and to_postal_code
类似,我在 MongoDB 中有区域集合。
我希望查询取回 MongoDB 中的记录。
fromPostalCode : "B2H0A1"
和 toPostalCode : "B2H6B8"
,因此如果 "B2H5E1"
在范围内,则应返回行。
{
"_id" : { "$oid" : "559b55b9e4b0c262a075e95d"} ,
"_class" : "com.jiit.restlet.model.Zone" ,
"zoneId" : 481 ,
"zoneStructureId" : 2 ,
"zoneName" : "MAR" ,
"cityName" : "null" ,
"provinceCode" : "null" ,
"countryCode" : "CA" ,
"fromPostalCode" : "B2H0A1" ,
"toPostalCode" : "B2H6B8"
}
最佳答案
你可以这样做:
db.zone.find({
"zoneStructureId" : 2,
"countryCode": "CA",
"fromPostalCode": { "$lt": "B2H5E1" },
"toPostalCode": { "$gt": "B2H5E1" }
})
关于mysql - Mongodb 查询用于在字段之间搜索一个字母数字邮政编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31669322/