W tym artykule dowie się, jak tworzyć i używać typów tablic w standardowym SQL. Należy zauważyć, że chociaż tablice są częścią standardowych SQL, bazy danych, takie jak MySQL, nie wspierają tablic natywnie.
Co to jest tablica?
Tablica odnosi się do zbioru uporządkowanej listy elementów. Tablice są bardzo przydatne i potężne. Uczenie się, jak pracować z tablicą, może pomóc poprawić wydajność i zapewnić złożone techniki manipulacji danymi.
W silnikach bazy danych, takich jak BigQuery i PostgreSQL, tablica to wbudowany typ, który można używać w dowolnym miejscu w bazie danych.
Jednak w przeciwieństwie do PostgreSQL, BigQuery uniemożliwia tworzenie tablic wielowymiarowych.
SQL Utwórz tablicę
Najprostszym sposobem utworzenia tablicy jest użycie jej dosłownego formatu. Przykładem jest jak pokazano:
WYBIERAĆPowyższy kod powinien utworzyć tablicę o nazwie My_Array z elementami wewnątrz nawiasów kwadratowych.
Przykładem jest to, jak pokazano:
my_arrayDrugą metodą, której można użyć do utworzenia tablicy, jest funkcja Generate_Array. Ta funkcja jest dostępna tylko w BigQuery.
Poniższy kod pokazuje, jak korzystać z funkcji Generate_Array, aby wygenerować tablicę.
WYBIERAĆKod powyżej generuje szereg elementów od 1 do 5. Powstałe wyjście jest jak pokazano:
my_arrayFunkcja Generate_Array jest zgodna z składnią, jak pokazano poniżej:
Generate_array (start_Expression, end_Expression [, Step_Expression])Możesz użyć step_Expression, aby ustawić rozmiar kroku dla wygenerowanych elementów.
Inne podobne funkcje obejmują:
Możesz sprawdzić dokumentację funkcji tablicy, aby dowiedzieć się więcej.
Dostęp do elementów tablicy
BigQuery pozwala nam korzystać z wartości przesunięcia lub wartości porządkowej, aby uzyskać dostęp do elementów w tablicy.
Offset to wartość oparta na 0, podczas gdy porządek jest oparty na 1.
Rozważ przykładowe zapytanie poniżej:
WYBIERAĆW zapytaniu używamy funkcji Generate_Array do generowania tablicy z wartościami zaczynającymi się od 1 do 5.
Następnie używamy funkcji przesunięcia i porządkowych, aby pobrać pierwszy element w tablicy.
Kod powyżej powinien zwrócić:
offset_0 Orinal_0Możesz wybrać dowolną metodę dostępu do tablicy, której chcesz użyć. Na przykład wybierz offset, jeśli wolisz indeks oparty na 0; W przeciwnym razie wybierz Orinal.
Znalezienie długości tablicy
Aby uzyskać długość tablicy, możesz użyć funkcji Array_Length, jak pokazano:
WYBIERAĆPowinno to zwrócić długość tablicy jako:
F0_Długość tablicy odnosi się do liczby elementów w tablicy.
Konwertuj tablicę na wiersze
Aby przekonwertować tablicę na zestaw wierszy, użyj funkcji Unnest, jak pokazano poniżej:
WYBIERAĆPowyższy kod tworzy tablicę liczb parzystych od 0 do 20 i przekształca je w rzędy za pomocą funkcji Niezbędnej.
Powstałe dane wyjściowe pokazano poniżej:
nawetMożesz dowiedzieć się więcej o dowództwie Niezniszczonym w połączonym samouczku.
Konwertuj tablicę na ciąg
Jeśli masz tablicę ciągów, możesz przekonwertować go na ciąg za pomocą funkcji array_to_string.
Przykładem użycia jest jak pokazano:
WYBIERAĆKod powyżej przekształca tablicę ciągów w jeden ciąg. Składnia funkcji to:
Array_to_string (array_Expression, delimiter [, null_text])Wniosek
W tym artykule przedstawiono fundamentalną wiedzę na temat pracy z tablicami w standardowym SQL za pomocą BigQuery. Typ macierzy jest więcej poza zakresem tego samouczka. Sprawdź poniższe zasoby, aby zbadać więcej.
https: // chmura.Google.com/bigQuery/Docs/Reference/Standard-SQL/tablic
https: // chmura.Google.com/bigquery/docs/reference/standard-SQL/array_functions
Dziękuję za przeczytanie i mam nadzieję, że ci się podobało!!