Oracle , une application de base de données de pointe, dispose de nombreuses fonctions analytiques qui permettent aux développeurs d'effectuer des tâches dans un langage structuré de requêtes , ou SQL , par opposition à un langage procédural , qui vient avec beaucoup plus de contraintes . Exemples de fonctions analytiques Oracle comprennent Avg, Count , Lag , Pourcentage Rang et de la variance . Fonction
fonctions analytiques
combinent un groupe de lignes à calculer une valeur globale . Chaque fonction spécifique accomplit l'exploit d'une manière différente , mais toutes les fonctions analytiques offrent un net avantage sur les fonctions d'agrégation habituelles en ce qu'ils peuvent renvoyer plusieurs lignes pour chaque groupe. Les utilisateurs emploient généralement des fonctions analytiques pour calculer ces différents types de granulats comme cumulatifs , émouvant , centré ou de déclaration.
Caractéristiques
Alors que la syntaxe pour chaque fonction peut varier légèrement , la structure de la syntaxe de base pour une fonction analytique Oracle comprend les mêmes trois éléments: la fonction analytique , les arguments et la cause analytique. La syntaxe peut être saisi comme « analytic_function ([ arguments] ) OVER ( analytic_clause ) " . La fonction analytique peut incorporer entre zéro et trois arguments , des arguments constitués de toutes les données numériques. La partie de l'article analytique peut être constitué d'une clause de partition requête, une ordonnance de justification par classe ou d'une clause de fenêtrage .
Types
Chacun des trois clauses analytiques dans une fonction analytique effectue une tâche particulière . Une clause de requêtes de partition divise le résultat mis en groupes de données , en séparant les données en partitions . Cette caractéristique permet une plus grande personnalisation et une organisation plus efficace des données . La clause ORDER BY prend les choses un peu plus loin , en ordonnant les lignes d'une partition pour encore plus de précision. Enfin, la clause de fenêtrage fonctionne comme une extension de la clause ORDER BY , la détermination d'une gamme spécifique de lignes à partir de la partition ordonnée à affecter . Une clause de fenêtrage peut être utilisé que si une clause ORDER BY est déjà présent.
Considérations
En entrant dans la syntaxe de la fonction analytique donnée, vous pouvez ajouter certains termes de définir plus précisément les données résultantes . Par exemple , l'ASC et DESC représentent « ascendant » et « descendant », respectivement , lorsque vous spécifiez une séquence de commande. L'ajout des termes NULLS première ou NULLS DERNIERS détermine si les lignes renvoyées sans données doivent être affichées premier ou en dernier. Lorsque vous travaillez avec une clause de fenêtrage , rows indique la fenêtre ciblée en unités physiques , tandis que la portée précise de la fenêtre comme un ensemble logique de lignes. Vous pouvez également définir le point de départ d'une fenêtre avec CURRENT ROW ou même sans bornes précédentes, qui place le point de départ lors de la première ligne de la partition. Le terme suivant UNBOUNDED spécifie la fenêtre se termine à la dernière rangée de la partition.