Listy pól aplikacji Direct Discovery
Lista pól jest rozdzielaną przecinkami listą specyfikacji pól fieldname {, fieldname}. Specyfikacja pola może być nazwą pola. W takiej sytuacji ta sama nazwa będzie używana jako nazwa kolumny bazy danych i nazwa pola. Specyfikacja pola może być też aliasem pola. W takiej sytuacji wyrażeniu bazy danych lub kolumnie jest nadawana nazwa pola Qlik Sense.
Nazwy pól mogą być nazwami prostymi lub nazwami cytowanymi. Nazwa prosta zaczyna się od alfabetycznego znaku Unicode, a po niej następuje dowolna kombinacja znaków alfabetu, znaków cyfr lub podkreśleń. Nazwy cytowane zaczynają się od znaku podwójnego cudzysłowu i zawierają dowolną sekwencję znaków. Jeśli nazwa cytowana zawiera znaki podwójnego cudzysłowu, te znaki są reprezentowane przez dwa sąsiadujące znaki podwójnego cudzysłowu.
W nazwach pól Qlik Sense rozróżniana jest wielkość liter. W nazwach pól bazy danych wielkość liter może być uwzględniana lub nie w zależności od bazy danych. Zapytanie Direct Discovery zachowuje wielkość liter wszystkich identyfikatorów i aliasów pól. W poniższym przykładzie alias "MyState" jest używany wewnętrznie w celu przechowywania danych z kolumny "STATEID" bazy danych.
To różni się od wyniku instrukcji SQL Select z aliasem. Jeśli alias nie jest cytowany jawnie, wynik zawiera domyślną wielkość liter kolumny zwracanej przez docelową bazę danych. W poniższym przykładzie instrukcja SQL Select do bazy danych Oracle tworzy "MYSTATE," z wszystkimi wielkimi literami jako wewnętrzny alias Qlik Sense, mimo że alias jest pisany literami o różnej wielkości. Instrukcja SQL Select używa zwróconej przez bazę danych nazwy kolumny, która w przypadku bazy danych Oracle cała jest pisana wielkimi literami.
W celu uniknięcia takiego zachowania należy użyć instrukcji LOAD, aby określić alias.
SQL Select STATEID, STATEMENT from STATE_TABLE;
W tym przykładzie kolumna "STATEID" jest zapisywana wewnętrznie w aplikacji Qlik Sense jako "MyState".
Wyrażenia skalarne bazy danych mogą być w większości stosowane jako specyfikacje pól. Wywołania funkcji również mogą być używane w specyfikacjach pól. Wyrażenia mogą zawierać stałe logiczne, liczbowe i w postaci ciągów zawartych w pojedynczych cudzysłowach (osadzone pojedyncze cudzysłowy są reprezentowane przez sąsiadujące znaki pojedynczych cudzysłowów).
Przykłady:
Aplikacja Direct Discovery nie obsługuje użycia agregacji w instrukcjach LOAD. Użycie agregacji może spowodować, że wyniki będą nieprzewidywalne. Instrukcja LOAD, taka jak poniższa, nie powinna być używana:
Funkcja SUM nie powinna znajdować się w instrukcji LOAD.
Aplikacja Direct Discovery nie obsługuje także funkcji Qlik Sense w instrukcjach Direct Query. Na przykład poniższa specyfikacja dla pola DIMENSION kończy się błędem, gdy pole "Mth" jest używane jako wymiar w wizualizacji: