Zapytania SQL w SAP HANA

Zapytania SQL w SAP HANA

Prawdopodobnie każdy, kto wykorzystuję platformę SAP HANA do budowy przepływów danych, wykorzystuje do tego w mniejszym lub większym stopniu język SQL. Widoki kalkulacyjne, funkcje tabelaryczne, procedury, czy nawet formuły w widokach graficznych – wzystkie te elementy budowane są za pomocą między innymi strukturalnego języka zapytań.

Poza tworzeniem obiektów, język SQL w SAP HANA może służyć również (a może przede wszystkim) do analizy danych, zarówno pochodzących z widoków tworzonych w HANA Studio, jak i tych z obiektów BW, o ile wykorzystujemy koncepcję BW on HANA / BW4HANA.

Analiza danych za pomocą SQL przynosi oczywiste korzyści – daje potężne możliwości, a język SQL jest powszechnie znany. Aby rozpocząć pracę z SQL w HANA Studio, najprościej włączyć konsolę SQL – w perspektywie HANA Modeler lub HANA Developer – i zacząć pisać.

Konsola to najbardziej dostępny sposób na rozpoczęcie pracy z SQL, jednak nie zawsze jest sposobem najwygodniejszym. W przypadku, gdy nie znamy struktury tabel lub widoków, szybkie napisanie efektywnego kodu bywa kłopotliwe. Na szczęście w HANA Studio istnieje kilka sposobów na ułatwienie sobie analizy danych za pomocą SQL.

Drag & Drop

Po otwarciu konsoli SQL wystarczy otworzyć drzewo tabel lub widoków na karcie Systems, po znalezieniu tego, z którego dane chcemy analizować, przeciągnąć go do obszaru konsoli. Pełna ścieżka pojawi się w kodzie.

Generate Select Statement

Wykorzystanie drag & drop jest pomocne tylko do umieszczenia tabel / widoków w kodzie SQL. Nie pozwala na zobaczenie struktury tych obiektów, a przy tworzeniu złożonych (i efektywnych) zapytań SQL to jest najistotniesza informacją. Można oczywiście przeglądać strukturę tabeli, a następnie ręcznie wpisywać do konsoli SQL poszczególne kolumny. Jednak znacznie łatwiej jest wykorzystać opcję automatycznego tworzenia zapytania SQL.

W drzewie obiektów (Systems) należy znaleźć ten, na podstawie którego zapytanie chcemy stworzyć, a następnie wybrać Generate Select SQL.

W kosoli otwarte zostanie gotowe zapytanie SQL z listą wszystkich kolumn w obiekcie źródłowym, a także z domyślną agregacją miar i klauzulą GROUP BY w przypadku widoków. Tak wygenerowane zapytanie jest doskonałą bazą do dalszych przekrztałceń i budowy bardziej skomplikowanych zapytań.

Obok Generate Select Statement znajduje się również Generate Insert Statement, działający analogicznie.

Visual SQL

Trzecią opcją dostępną w menu Generate jest Visual SQL (opcja dostępna tylko dla tabel). Funkcja bardzo ciekawa, niestety zdecydowanie mało rozwinięta i niedopracowana. Tym niemniej czasem warto sięgnąć po visual SQL, który w sposób graficzny pomaga budować zapytania SQL bazujące na tabelach.

Wywołanie Visual SQL otwiera schemat obiektu z listą wszystkich kolumn. Kolumny można dodawać do budowanego zapytania (prawy przycisk myszy – select).

Dodając kolumny, pojawiają się one w dolnym oknie edytora, gdzie można przypisać im synonim, włączyć sortowanie lub dodać kolumnę do warunków w klauzuli WHERE.

Do edytora graficznego można dodać wiele tabel i zbudować między nimi połączenia. Do dodawania tabel i join-ów służy przycisk zielonego plusa. Połączenia najłatwiej stworzyć przeciągając linie między wspólnymi kolumnami.

Po stworzeniu zapytania w trybie wizualnym, można oczywiście od razu wyświetlić rezultat zapytania (prawy klik – Execute lub Data Preview). Aby dalej przekrztałcać zapytanie (dodać elementy, których brakuje w edytorze wizualnym), warto sięgnąć po opcje Export SQL.

Export SQL otwiera wygenerowany kod od razu w konsoli SQL. Kod wyeksportowany z edytora wizualnego jest bardzo czytelny i stanowi dobrą bazę do dalszej rozbudowy.

Po więcej informacji o używaniu języka SQL w SAP HANA, warto sięgnąć do SAP HANA SQL Script Reference, należy przy tym zwrócić uwagę na posiadaną wersję platformy (występują duże różnice między wersjami 1.x a 2.x).

Zostaw komentarz

This site uses Akismet to reduce spam. Learn how your comment data is processed.