Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: ✅Microsoft Fabric✅
Erstellt ein dynamisches Eigenschaftenbehälterobjekt aus einer Liste von Schlüsseln und Werten.
Veraltete Aliase: pack(), pack_dictionary()
Syntax
bag_pack(
key1 value1,,key2 value2,,... )
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
| Name | Type | Erforderlich | Beschreibung |
|---|---|---|---|
| key | string |
✔️ | Der Name des Schlüssels. |
| value | beliebiger skalarer Datentyp | ✔️ | Der Schlüsselwert. |
Hinweis
Die Schlüssel - und Wertzeichenfolgen sind eine abwechselnde Liste, die die Gesamtlänge der Liste gleichmäßig sein muss.
Gibt zurück
Gibt ein dynamic Eigenschaftenbehälterobjekt aus den aufgelisteten Schlüssel - und Werteingaben zurück.
Beispiele
Beispiel 1
Im folgenden Beispiel wird ein Eigenschaftenbehälter aus einer wechselnden Liste von Schlüsseln und Werten erstellt und zurückgegeben.
print bag_pack("Level", "Information", "ProcessID", 1234, "Data", bag_pack("url", "www.bing.com"))
Ergebnisse
| print_0 |
|---|
| {"Level": "Information", "ProcessID": 1234, "Data": {"url":"www.bing.com"}} |
Beispiel 2
Im folgenden Beispiel wird ein Eigenschaftenbehälter erstellt und der Wert aus dem Eigenschaftenbehälter mithilfe des Operators "." extrahiert.
datatable (
Source: int,
Destination: int,
Message: string
) [
1234, 100, "Hi",
4567, 200, "Hello",
1212, 300, "Hey"
]
| extend MyBag=bag_pack("Dest", Destination, "Text", Message)
| project-away Source, Destination, Message
| extend MyBag_Dest=MyBag.Dest, MyBag_Text=MyBag.Text
Ergebnisse
MyBag |
MyBag_Dest |
MyBag_Text |
|---|---|---|
| {"Dest":100,"Text":"Hi" } | 100 | Hallo |
| {"Dest":200,"Text":"Hello" } | 200 | Hallo |
| {"Dest":300,"Text":"Hey" } | 300 | Hallöchen |
Beispiel 3
Im folgenden Beispiel werden zwei Tabellen verwendet: SmsMessages und MmsMessages und gibt ihre gemeinsamen Spalten und einen Eigenschaftenbehälter aus den anderen Spalten zurück. Die Tabellen werden als Teil der Abfrage ad-hoc erstellt.
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 | Dateigröße | FileType | Dateiname |
|---|---|---|---|---|
| 555-555-1212 | 555-555-1213 | 200 | JPEG | Bild1 |
| 555-555-1234 | 555-555-1212 | 250 | JPEG | Bild2 |
| 555-555-1234 | 555-555-1213 | 300 | PNG | Bild3 |
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,
FileSize: string,
FileName: string
) [
"555-555-1212", "555-555-1213", "200", "Pic1",
"555-555-1234", "555-555-1212", "250", "Pic2",
"555-555-1234", "555-555-1213", "300", "Pic3"
];
SmsMessages
| join kind=inner MmsMessages on SourceNumber
| extend Packed=bag_pack("CharsCount", CharsCount, "FileSize", FileSize, "FileName", FileName)
| where SourceNumber == "555-555-1234"
| project SourceNumber, TargetNumber, Packed
Ergebnisse
| SourceNumber | TargetNumber | Packed |
|---|---|---|
| 555-555-1234 | 555-555-1213 | {"CharsCount":"50","FileSize":"250","FileName":"Pic2"} |
| 555-555-1234 | 555-555-1212 | {"CharsCount":"46","FileSize":"250","FileName":"Pic2"} |
| 555-555-1234 | 555-555-1213 | {"CharsCount":"50","FileSize":"300","FileName":"Pic3"} |
| 555-555-1234 | 555-555-1212 | {"CharsCount":"46","FileSize":"300","FileName":"Pic3"} |