Fonction max (XQuery)

 

S’applique à : SQL Server

Renvoie, à partir d’une séquence de valeurs atomiques, $arg, le seul élément dont la valeur est supérieure à celle de tous les autres.

  
fn:max($arg as xdt:anyAtomicType*) as xdt:anyAtomicType?  

$arg
Séquence de valeurs atomiques à partir de laquelle la valeur maximale est renvoyée.

Tous les types de valeurs atomisées transmises à max() doivent être des sous-types du même type de base. Types de base acceptés sont les types qui prennent en charge la gt opération. Ces types incluent les trois types numériques de base intégrés, les types de base date/heure et les types xs:string (chaîne), xs:boolean (booléen) et xdt:untypedAtomic (atomique non typé). Les valeurs de type xdt:untypedAtomic sont converties en xs:double. S’il existe un mélange de ces types, ou si d’autres valeurs d’autres types sont passés, une erreur statique est déclenchée.

Le résultat de max() reçoit le type de base des types transmis, tels que xs : double dans le cas de xdt : untypedAtomic. Si l'entrée est vide (valeur empty) de façon statique, « empty » est alors implicite et une erreur statique est émise.

Le max() fonction retourne la valeur de la séquence qui est supérieure à un autre dans la séquence d’entrée. Pour les valeurs xs:string, le classement par défaut des points de code Unicode est utilisé. Si une valeur xdt : untypedAtomic ne peut pas être convertie en xs : double, la valeur est ignorée dans la séquence d’entrée, $arg. Si l'entrée est une séquence vide calculée de manière dynamique, la séquence vide est renvoyée.

Cette rubrique fournit des exemples de XQuery relatifs à des instances XML stockés dans différentes xml colonnes de type le AdventureWorks2012 base de données.

A. Utilisation de la fonction XQuery max() pour localiser les postes de travail du processus de fabrication enregistrant le plus d'heures de main-d'œuvre

La requête fournie dans fonction min (XQuery) peut être réécrit pour utiliser le max() (fonction).

Les limitations suivantes s'appliquent :

  • Le max () fonction mappe tous les entiers à xs : decimal.

  • Le max() fonction sur des valeurs de type xs : Duration n’est pas pris en charge.

  • Les séquences faisant intervenir plusieurs types dérivés de différents types de base ne sont pas prises en charge.

  • L'option syntaxique fournissant un classement n'est pas prise en charge.

Fonctions XQuery sur le Type de données xml

Ajouts de la communauté

Afficher: