0
我是mongo db的新手。我正在尝试基于年龄键获取记录,但查询总是返回空结果。如何从对象键中获取mongo db的数据php
这里是JSON字符串
"age_premium": {
"age": {
"65": {
"Plan A": "136.24",
"Plan B": "140.33",
"Plan F": "172.72",
"Plan G": "142.95",
"Plan N": "117.45"
},
"66": {
"Plan A": "136.24",
"Plan B": "140.33",
"Plan F": "172.72",
"Plan G": "142.95",
"Plan N": "117.45"
}}}
我想根据年龄值获取数据。
我尝试使用此查询
$collection->find(array('age_premium.age'=>'65'));
'age_premium.age'是一个对象,而不是一个字符串。在v3.6中,您将能够在聚合框架中使用'$ objectToArray'。在此之前,唯一的选择是MapReduce,它是一个ETL工具,不推荐用于操作查询。另外,请记住,类型很重要:比较字符串时,'8'>'70'>'120'。 –
@AlexBlex现在有什么解决方案? – Tuhin
更改模式以使“age”是一个数组,并且嵌入文档将年龄作为数字。 –