Querying a map of maps with a dynamic key

@randy.pierce ,

WITH k AS ( "HRRRE_mem3")
SELECT RAW m.primaryOrders.[k].m_order
FROM mdata AS m USE KEYS "fred-125";

$k is query parameters

SELECT RAW m.primaryOrders.[$k].m_order
FROM mdata AS m USE KEYS "fred-125";


INSERT INTO default VALUES("f1", {"a":"b", "b":10});
SELECT  d.[d.a] AS val
FROM default AS d USE KEYS "f1";

This how map/dictionary access via N1QL
d.[d.a] ===> becomes d.[“b”] ===> d.b ===> returns value 10
As u see in syntax there array bracket after . and expression inside the array brackets
It evaluates expression in array brackets. It must evaluate to string
.[“b”] treats as if b is field name in the object.

Here from two keys construct object from original document

WITH ks AS ([ "HRRRE_mem3",   "HRRRE_mem4"])
SELECT RAW OBJECT v:m.primaryOrders.[v].m_order FOR v IN ks END
FROM mdata AS m USE KEYS "fred-125";

Complex example can be found here Merge into seems to not work correctly