stringtranslate.com

FLORA

El lenguaje de programación XQuery define FLWOR (pronunciado 'flor') como una expresión que admite la iteración y la vinculación de variables a resultados intermedios. FLWOR es un acrónimo: PARA , DEJAR , DONDE, ORDENAR POR, DEVOLVER. [1] FLWOR es vagamente análogo a SELECT-FROM-WHERE de SQL y puede usarse para proporcionar una funcionalidad similar a la de unión a documentos XML .

Ejemplo

 para $ d en doc ( "depts.xml" )// deptno let $ e := doc ( "emps.xml" )// empleado [ deptno = $ d ] donde contar ( $ e ) >= 10 ordenar por promedio ( $ e / salario ) retorno descendente <big-dept> { $ d , <headcount> { count ( $ e )} </headcount> , <avgsal> { avg ( $ e / salario )} </avgsal> } </ gran departamento>                        

La primera columna de la solicitud XQuery muestra las palabras clave for , let , where , order by y return del paradigma FLWOR. En términos sencillos, esto podría leerse como "Obtener todos los departamentos que tienen más de diez empleados, ordenar estos departamentos disminuyendo el salario promedio y devolver un informe de los números de departamento, el número de empleados y el salario promedio en cada departamento grande" . El resultado podría verse así:

<big-dept> <deptno> 17 </deptno> <headcount> 25 </headcount> <avgsal> 12500 </avgsal> </big-dept> <big-dept> <deptno> 24 </deptno> <headcount > 18 </headcount> <avgsal> 11327 </avgsal> </big-dept> <big-dept> <deptno> 3 </deptno> <headcount> 32 </headcount> <avgsal> 10725 </avgsal> < /gran-departamento>         

Ejemplo usando Microsoft SQL Server

DECLARAR @xml XML  SET @xml = '<elemento_raíz> <elemento_branch> <item_1>42</item_1> <item_2>27</item_2> </branch_element> <branch_element> <item_1>a</item_1> <item_2>b</item_2> </branch_element> </root_element>'   SELECCIONAR x . y . consulta ( 'for $s in self::node() return $s//item_1/text()' ) como i , x . y . consulta ( 'for $s in self::node() return $s//item_2/text()' ) como j FROM @xml . nodos ( '/root_element' ) AS x ( y );        

Referencias

  1. ^ Walmsley, Priscila (2007). XQuery. Sebastopol, CA, EE.UU.: O'Reilly Media. pag. 73.ISBN​ 978-0-596-00634-1.

enlaces externos