op:from-literals( $rowdefs as item()+, [$qualifier as xs:string?] ) as map:map
Constructs a literal row set as in the SQL VALUES or SPARQL VALUES statements. When specifying rows with arrays, values are mapped to column names by position.
Parameters | |
---|---|
$rowdefs | This parameter is either an array of object literals or sem:binding objects in which the key is a column name string identifying the column and the value is a literal with the value of the column, or this parameter is an object with a columnNames key having a value of an array of column names and a rowValues key having a value of an array of arrays with literal values. |
$qualifier | Specifies a name for qualifying the column names in place of the combination of the schema and view names. Use cases for the qualifier include self joins. Using an empty string removes all qualification from the column names. |
xquery version "1.0-ml"; import module namespace op="http://marklogic.com/optic" at "/MarkLogic/optic.xqy"; op:from-literals(( map:entry("group", 1) => map:with("val", 2), map:entry("group", 1) => map:with("val", 4), map:entry("group", 2) => map:with("val", 3), map:entry("group", 2) => map:with("val", 5), map:entry("group", 2) => map:with("val", 7) )) => op:group-by('group', op:avg('valAvg', 'val')) => op:order-by('group') => op:result()