QlikWorld 2020 Global Conference. Nehmen Sie teil, um zu erfahren, wie Sie Ihre Daten optimal nutzen können. Zögern Sie nicht. Registrieren Sie sich jetzt zum günstigeren Preis.

Qualify

Mit dem Befehl Qualify wird die Qualifikation von Feldnamen aktiviert, d. h. Feldnamen erhalten den Tabellennamen als Zusatz.

Syntax:  

Qualify *fieldlist

 

Die automatische Verknüpfung von gleichnamigen Feldern in unterschiedlichen Tabellen kann mit dem Befehl qualify verhindert werden, indem die Feldnamen durch den Tabellennamen ergänzt und somit qualifiziert werden. Die Umbenennung erfolgt, wenn der Feldname in der Tabelle gefunden wird. Der neue Feldname hat die Form tablename.fieldname. Tablename entspricht dem Namen der aktuellen Tabelle, sofern vorhanden, anderenfalls wird der Name verwendet, der nach from in LOAD- und SELECT-Befehlen genannt ist.

Die Qualifizierung erfolgt für alle Felder, die nach dem Befehl qualify geladen wurden.

Die Qualifizierung ist standardmäßig zu Beginn der Skriptausführung immer deaktiviert. Dies geschieht erst durch den qualify-Befehl. Der Befehl Unqualify bewirkt, dass die nachfolgend geladenen Felder nicht mehr qualifiziert werden.

Hinweis: Hinweis: Der qualify-Befehl sollte nicht in Zusammenhang mit einer partiellen Ausführung des Skripts verwendet werden.

Argumente:  

Argument Beschreibung
*fieldlist Eine kommagetrennte Felderliste, für welche die Qualifizierung aktiviert werden sollte. Das Sternchen * steht für alle Felder. Die Wildcards * und ? sind in Feldnamen zugelassen. Beim Gebrauch von Wildcards innerhalb von Feldnamen müssen diese gegebenenfalls in Anführungszeichen stehen.

Beispiel 1:  

Qualify B;

LOAD A,B from x.csv;

LOAD A,B from y.csv;

Die beiden Tabellen x.csv und y.csv sind nur durch A verknüpft. Daraus resultieren drei Felder: A, x.B, y.B.

Beispiel 2:  

Insbesondere in Datenbanken, deren Struktur nicht bekannt ist, möchten Sie möglicherweise nur Verknüpfungen über ein einziges oder wenige Felder zulassen. Dieser Vorgang wird im folgenden Beispiel dargestellt:

qualify *;

unqualify TransID;

SQL SELECT * from tab1;

SQL SELECT * from tab2;

SQL SELECT * from tab3;

In diesem Fall werden die Tabellen tab1, tab2 und tab3 nur über das Feld TransID verknüpft.

Siehe auch: