bag_pack()
Crée un objet de conteneur de propriétés dynamique à partir d’une liste de clés et de valeurs.
Alias déconseillés : pack(), pack_dictionary()
Syntaxe
bag_pack(
key1 value1,
,
key2 value2,
,... )
En savoir plus sur les conventions de syntaxe.
Paramètres
Nom | Type | Requise | Description |
---|---|---|---|
key | string |
✔️ | Nom de la clé. |
value | n’importe quel type de données scalaire | ✔️ | Valeur de clé. |
Remarque
Les chaînes clé et valeur sont une liste alternée dont la longueur totale doit être égale.
Retours
Retourne un dynamic
objet de conteneur de propriétés à partir des entrées clé et valeur répertoriées.
Exemples
Exemple 1 :
L’exemple suivant crée et retourne un conteneur de propriétés à partir d’une liste alternée de clés et de valeurs.
print bag_pack("Level", "Information", "ProcessID", 1234, "Data", bag_pack("url", "www.bing.com"))
Résultats
print_0 |
---|
{"Level » :"Information »,"ProcessID » :1234,"Data » :{"url » :"www.bing.com"}} |
Exemple 2
L’exemple suivant crée un conteneur de propriétés et extrait la valeur du conteneur de propriétés à l’aide de l’opérateur « . ».
datatable (
Source: int,
Destination: int,
Message: string
) [
1234, 100, "AA",
4567, 200, "BB",
1212, 300, "CC"
]
| extend MyBag=bag_pack("Dest", Destination, "Mesg", Message)
| project-away Source, Destination, Message
| extend MyBag_Dest=MyBag.Dest, MyBag_Mesg=MyBag.Mesg
Résultats
MyBag | MyBag_Dest | MyBag_Mesg |
---|---|---|
{"Dest » :100,"Mesg » :"AA"} | 100 | AA |
{"Dest » :200,"Mesg » :"BB"} | 200 | BB |
{"Dest » :300,"Mesg » :"CC"} | 300 | CC |
Exemple 3
L’exemple suivant utilise deux tables, SmsMessages et MmsMessages, et retourne leurs colonnes communes et un conteneur de propriétés à partir des autres colonnes. Les tables sont créées ad hoc dans le cadre de la requête.
SmsMessages
SourceNumber | TargetNumber | CharsCount |
---|---|---|
555-555-1234 | 555-555-1212 | 46 |
555-555-1234 | 555-555-1213 | 50 |
555-555-1212 | 555-555-1234 | 32 |
MmsMessages
SourceNumber | TargetNumber | AttachmentSize | AttachmentType | AttachmentName |
---|---|---|---|---|
555-555-1212 | 555-555-1213 | 200 | jpeg | Pic1 |
555-555-1234 | 555-555-1212 | 250 | jpeg | Pic2 |
555-555-1234 | 555-555-1213 | 300 | png | Pic3 |
let SmsMessages = datatable (
SourceNumber: string,
TargetNumber: string,
CharsCount: string
) [
"555-555-1234", "555-555-1212", "46",
"555-555-1234", "555-555-1213", "50",
"555-555-1212", "555-555-1234", "32"
];
let MmsMessages = datatable (
SourceNumber: string,
TargetNumber: string,
AttachmentSize: string,
AttachmentType: string,
AttachmentName: string
) [
"555-555-1212", "555-555-1213", "200", "jpeg", "Pic1",
"555-555-1234", "555-555-1212", "250", "jpeg", "Pic2",
"555-555-1234", "555-555-1213", "300", "png", "Pic3"
];
SmsMessages
| join kind=inner MmsMessages on SourceNumber
| extend Packed=bag_pack("CharsCount", CharsCount, "AttachmentSize", AttachmentSize, "AttachmentType", AttachmentType, "AttachmentName", AttachmentName)
| where SourceNumber == "555-555-1234"
| project SourceNumber, TargetNumber, Packed
Résultats
SourceNumber | TargetNumber | Bondé |
---|---|---|
555-555-1234 | 555-555-1213 | {"CharsCount » :"50 »,"AttachmentSize » :"250 »,"AttachmentType » :"jpeg »,"AttachmentName » :"Pic2"} |
555-555-1234 | 555-555-1212 | {"CharsCount » :"46 »,"AttachmentSize » :"250 »,"AttachmentType » :"jpeg »,"AttachmentName » :"Pic2"} |
555-555-1234 | 555-555-1213 | {"CharsCount » :"50 »,"AttachmentSize » :"300 »,"AttachmentType » :"png »,"AttachmentName » :"Pic3"} |
555-555-1234 | 555-555-1212 | {"CharsCount » :"46 »,"AttachmentSize » :"300 »,"AttachmentType » :"png »,"AttachmentName » :"Pic3"} |
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