Articulo de referencia

FLWOR

El lenguaje de programación XQuery define FLWOR (pronunciado 'flower') como una expresión que admite la iteración y la vinculación de variables a resultados intermedios. FLWOR e...

El lenguaje de programación XQuery define FLWOR (pronunciado 'flower') como una expresión que admite la iteración y la vinculación de variables a resultados intermedios. FLWOR es un acrónimo: FOR , LET , WHERE, ORDER BY, RETURN. [1] FLWOR es vagamente análogo a SELECT-FROM-WHERE de SQL y se puede utilizar para proporcionar una funcionalidad similar a la de unión a documentos XML .

  • para crea una secuencia de nodos
  • let vincula una secuencia a una variable
  • donde filtra los nodos en una expresión booleana
  • ordenar por ordena los nodos
  • El retorno se evalúa una vez para cada nodo

Ejemplo

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

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

<gran-dept> <n°dept 
> 17 </n°dept> <número de personal> 25 < /número de personal> <promedio> 12500 </promedio> </gran-dept> <gran-dept> < n° dept > 24 < /n°dept> <número de personal > 18 </número de personal > <promedio> 11327 </promedio> </gran-dept> <gran-dept> < n° dept > 3 </ n° dept > <número de personal > 32 </número de personal> <promedio> 10725 </promedio> </gran-dept>    
    
    


    
    
    


    
    
    

Ejemplo utilizando Microsoft SQL Server

DECLARAR @xml XML  

ESTABLECER @xml = '<elemento_raíz> 	<elemento_rama> 		<elemento_1>42</elemento_1> 		<elemento_2>27</elemento_2> 	</elemento_rama> 	<elemento_rama> 		<elemento_1>a</elemento_1> 		<elemento_2>b</elemento_2> 	</elemento_rama> </elemento_raíz> '   











SELECCIONAR x . y . consulta ( 'para $s en self::node() devolver $s//item_1/text()' ) como i , x . y . consulta ( 'para $s en self::node() devolver $s//item_2/text()' ) como j DE @xml . nodes ( '/root_element' ) COMO x ( y ); 
		  
		  
	   

Referencias

  1. ^ Walmsley, Priscila (2007). XQuery. Sebastopol, CA, EE.UU.: O'Reilly Media. pag. 73.ISBN 978-0-596-00634-1.
  • Consulta XML W3C (XQuery) - Expresiones FLWOR
  • Ejemplos de FLWOR
  • Introducción a FLWOR
  • https://web.archive.org/web/20111008001258/http://w3schools.com/xquery/xquery_flwor.asp


Retrieved from "https://en.wikipedia.org/w/index.php?title=FLWOR&oldid=1220162315"