Qualify

Instrukcja Qualify służy do przełączania kwalifikacji nazw pól, na przykład aby nazwy te przyjmowały jako prefiks nazwę tabeli.

Syntax:  

Qualify *fieldlist

 

Przy użyciu instrukcji qualify, kwalifikującej nazwę pola z nazwą tabeli, można zawiesić automatyczne sprzężenie pól o tej samej nazwie w różnych tabelach. W przypadku kwalifikacji nazwy pól po znalezieniu ich w tabeli zostaną zmienione. Nowa nazwa będzie miała formę tablename.fieldname. Tablename to odpowiednik etykiety bieżącej tabeli lub, w przypadku braku etykiety, nazwy pojawiającej się po określeniu from w instrukcjach LOAD i SELECT.

Kwalifikacja zostanie przeprowadzona dla wszystkich pól załadowanych po instrukcji qualify.

Kwalifikacja jest zawsze domyślnie wyłączona na początku wykonania skryptu. Kwalifikację nazwy pola można aktywować w dowolnym momencie przy użyciu instrukcji qualify. Kwalifikację można wyłączyć w dowolnym momencie przy użyciu instrukcji Unqualify.

Uwaga: Instrukcji qualify nie należy stosować w połączeniu z częściowym przeładowaniem.

Arguments:  

Argument Opis
*fieldlist Rozdzielana przecinkami lista pól, w odniesieniu do których kwalifikacja powinna być włączona. Użycie znaku * jako listy pól oznacza wszystkie pola. W nazwach pól dozwolone jest korzystanie z symboli wieloznacznych * i ?. Cytowanie nazw pól może być konieczne, gdy używane są symbole wieloznaczne.

Example 1:  

Qualify B;

LOAD A,B from x.csv;

LOAD A,B from y.csv;

Dwie tabele x.csv i y.csv są powiązane tylko przez A. Rezultatem będą trzy pola: A, x.B, y.B.

Example 2:  

W przypadku nieznanej bazy danych zwykle warto zacząć od upewnienia się, że powiązano tylko jedno pole lub kilka pól, jak pokazano na następującym przykładzie:

qualify *;

unqualify TransID;

SQL SELECT * from tab1;

SQL SELECT * from tab2;

SQL SELECT * from tab3;

Na potrzeby asocjacji między tabelami tab1, tab2 i tab3 będzie użyte tylko TransID.

See also: