Plug-In „schema_merge“
Führt tabellarische Schemadefinitionen in einem einheitlichen Schema zusammen.
Es wird erwartet, dass Schemadefinitionen das vom getschema
Operator erzeugte Format aufweisen.
Der schema merge
Vorgang verknüpft Spalten in Eingabeschemas und versucht, Datentypen auf gängige Zusätze zu reduzieren. Wenn Datentypen nicht reduziert werden können, wird in der problematischen Spalte ein Fehler angezeigt.
Das Plug-In wird mit dem evaluate
Operator aufgerufen.
Syntax
T
|
evaluate
schema_merge(
PreserveOrder)
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
PreserveOrder | bool |
Wenn auf true festgelegt ist, weist das Plug-In an, die Spaltenreihenfolge zu überprüfen, wie durch das erste tabellarische Schema definiert, das beibehalten wird. Wenn sich dieselbe Spalte in mehreren Schemas befindet, muss die Ordnungszahl der Spalte der Ordnungszahl des ersten Schemas entsprechen, in dem sie angezeigt wurde. Der Standardwert ist true . |
Gibt zurück
Das schema_merge
Plug-In gibt eine Ausgabe zurück, die getschema
der Rückgabe des Operators ähnelt.
Beispiele
Zusammenführen mit einem Schema, an das eine neue Spalte angefügt ist.
let schema1 = datatable(Uri:string, HttpStatus:int)[] | getschema;
let schema2 = datatable(Uri:string, HttpStatus:int, Referrer:string)[] | getschema;
union schema1, schema2 | evaluate schema_merge()
Ausgabe
ColumnName | ColumnOrdinal | DataType | ColumnType |
---|---|---|---|
Uri | 0 | System.String | Zeichenfolge |
HttpStatus | 1 | System.Int32 | INT |
Referrer | 2 | System.String | Zeichenfolge |
Zusammenführen mit einem Schema, das eine andere Spaltenreihenfolge aufweist (HttpStatus
Ordnungsänderungen von 1
zu 2
in der neuen Variante).
let schema1 = datatable(Uri:string, HttpStatus:int)[] | getschema;
let schema2 = datatable(Uri:string, Referrer:string, HttpStatus:int)[] | getschema;
union schema1, schema2 | evaluate schema_merge()
Ausgabe
ColumnName | ColumnOrdinal | DataType | ColumnType |
---|---|---|---|
Uri | 0 | System.String | Zeichenfolge |
Referrer | 1 | System.String | Zeichenfolge |
HttpStatus | -1 | ERROR(unknown CSL type:ERROR(columns are out of order)) | ERROR(Spalten sind in falscher Reihenfolge) |
Führen Sie mit einem Schema zusammen, das eine andere Spaltenreihenfolge aufweist, aber auf PreserveOrder
false
festgelegt ist.
let schema1 = datatable(Uri:string, HttpStatus:int)[] | getschema;
let schema2 = datatable(Uri:string, Referrer:string, HttpStatus:int)[] | getschema;
union schema1, schema2 | evaluate schema_merge(PreserveOrder = false)
Ausgabe
ColumnName | ColumnOrdinal | DataType | ColumnType |
---|---|---|---|
Uri | 0 | System.String | Zeichenfolge |
Referrer | 1 | System.String | Zeichenfolge |
HttpStatus | 2 | System.Int32 | INT |
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für