table()
La fonction table() référence une table en fournissant son nom en tant qu’expression de type string
.
Syntax
table(
TableName [,
DataScope] )
Découvrez les conventions de syntaxe.
Paramètres
Nom | Type | Obligatoire | Description |
---|---|---|---|
TableName | string |
✔️ | Nom de la table référencée. La valeur de cette expression doit être constante au point d’appel à la fonction, ce qui signifie qu’elle ne peut pas varier selon le contexte de données. |
Datascope | string |
Utilisé pour restreindre la référence de table aux données en fonction de la façon dont ces données entrent dans la stratégie de cache effective de la table. S’il est utilisé, l’argument réel doit être l’une des valeurs d’étendue de données valides. |
Valeurs d’étendue de données valides
Valeur | Description |
---|---|
hotcache |
Seules les données catégorisées en tant que cache à chaud seront référencées. |
all |
Toutes les données de la table seront référencées. |
default |
La valeur par défaut est all , sauf si elle a été définie hotcache sur par l’administrateur du cluster. |
Retours
table(T)
retourne :
- Données de la table T si une table nommée T existe.
- Données retournées par la fonction T si une table nommée T n’existe pas, mais qu’une fonction nommée T existe. La fonction T ne doit prendre aucun argument et doit retourner un résultat tabulaire.
- Une erreur sémantique est générée s’il n’existe aucune table nommée T et aucune fonction nommée T.
Exemples
Utiliser table() pour accéder à la table de la base de données active
table('StormEvents') | count
Sortie
Count |
---|
59066 |
Utiliser table() dans les instructions let
La requête ci-dessus peut être réécrite en tant que fonction définie par la requête (instruction let) qui reçoit un paramètre tableName
qui est passé à la fonction table().
let foo = (tableName:string)
{
table(tableName) | count
};
foo('StormEvents')
Sortie
Count |
---|
59066 |
Utiliser table() dans Functions
La même requête que celle ci-dessus peut être réécrite pour être utilisée dans une fonction qui reçoit un paramètre tableName
, qui est passé à la fonction table().
.create function foo(tableName:string)
{
table(tableName) | count
};
Notes
Ces fonctions peuvent être utilisées uniquement localement et non dans la requête inter-cluster.
Utiliser table() avec un paramètre non constant
Un paramètre, qui n’est pas une chaîne de constante scalaire, ne peut pas être passé en tant que paramètre à la table()
fonction.
Vous trouverez ci-dessous un exemple de solution de contournement pour ce cas.
let T1 = print x=1;
let T2 = print x=2;
let _choose = (_selector:string)
{
union
(T1 | where _selector == 'T1'),
(T2 | where _selector == 'T2')
};
_choose('T2')
Sortie
x |
---|
2 |
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour