CouchDB Mango Queries (CouchDB 2.0.1)
I have been able to get a result for part 1. of my question (based on the answer to this question), as follows:
My index:
{"type": "json", "def": { "fields": [ { "places.0.place_name": "asc" } ] }}
My query:
{ "selector": { "places.0.place_name": { "$gte": null } }, "fields": [ "_id", "places.0.place_name" ], "sort": [ { "places.0.place_name": "asc" } ]}
Result:
{"docs":[{"_id":"254b9a8c7a46934363076cc3d9034082","places":{"0":{"place_name":"Aberdeen"}}},{"_id":"254b9a8c7a46934363076cc3d9037559","places":{"0":{"place_name":"Altavista"}}},{"_id":"254b9a8c7a46934363076cc3d900e4d2","places":{"0":{"place_name":"Anchorage"}}},{"_id":"254b9a8c7a46934363076cc3d900f3b9","places":{"0":{"place_name":"Anchorage"}}},{"_id":"254b9a8c7a46934363076cc3d902c738","places":{"0":{"place_name":"Ashland"}}},{"_id":"254b9a8c7a46934363076cc3d901a2f2","places":{"0":{"place_name":"Atlanta"}}},{"_id":"254b9a8c7a46934363076cc3d901a374","places":{"0":{"place_name":"Atlanta"}}} .................
In this case I have omitted the "post_code": {"$eq": 35801}
but this can be added without an error occurring.
part3:
Index:
{ "index": { "fields": [ { "places.place_name": "asc" } ] }, "type": "json"}
Query:
{ "selector": { "places.place_name": { "$gte": null } }, "fields": [ "places.place_name" ], "sort": [ { "places.place_name": "asc" } ]}Result:{"docs":[{"places":{"place_name":"Anchorage"}},{"places":{"place_name":"Anchorage"}},{"places":{"place_name":"Huntsville"}},{"places":{"place_name":"Huntsville"}},{"places":{"place_name":"Phoenix"}},{"places":{"place_name":"Phoenix"}}]}
Part 2:
Index:
{ "index": { "fields": [ { "old_post_code_numbers": "asc" } ] }, "type": "json"}
Query:
{ "selector": { "old_post_code_numbers": { "$gte": null } }, "fields": [ "places.place_name", "old_post_code_numbers" ], "sort": [ { "old_post_code_numbers": "asc" } ]}
Result:
{"docs":[{"places":{"place_name":"Huntsville"},"old_post_code_numbers":[12345,67890]},{"places":{"place_name":"Huntsville"},"old_post_code_numbers":[12345,67890]},{"places":{"place_name":"Anchorage"},"old_post_code_numbers":[12345,67890]},{"places":{"place_name":"Anchorage"},"old_post_code_numbers":[12345,67890]},{"places":{"place_name":"Phoenix"},"old_post_code_numbers":[12345,67890]},{"places":{"place_name":"Phoenix"},"old_post_code_numbers":[12345,67890]}]}
The last example using: "old_post_code_numbers.0"
throughout, gives:
{"docs":[{"places":{"place_name":"Huntsville"},"old_post_code_numbers":{"0":12345}},{"places":{"place_name":"Huntsville"},"old_post_code_numbers":{"0":12345}},{"places":{"place_name":"Anchorage"},"old_post_code_numbers":{"0":12345}},{"places":{"place_name":"Anchorage"},"old_post_code_numbers":{"0":12345}},{"places":{"place_name":"Phoenix"},"old_post_code_numbers":{"0":12345}},{"places":{"place_name":"Phoenix"},"old_post_code_numbers":{"0":12345}}]}
I would appreciate any comments.