Używanie języka ShopifyQL w aplikacji Notebooks

ShopifyQL to język zapytań Shopify stworzony na potrzeby handlu. Języki zapytań są wykorzystywane do żądania i pobierania danych z baz danych. JęzykaShopifyQLmożesz używać z aplikacją Notebooks firmy Shopify do przeszukiwania własnej bazy danych i pobierania danych, które zapewnią Ci pełniejszy wgląd w sytuację Twojej firmy.

Aby uzyskać pełną listę dostępnych wartości i wymiarów, które mogą być używane w zapytaniach ShopifyQL Notebook, zapoznaj się zeSchematem zamówieńiSchematem produktów.

Przegląd ShopifyQL

Dane sklepu są przechowywane w tabelach bazy danych o strukturze zdefiniowanych kolumn i wierszy. Kolumny definiują typ informacji, które zawierają, np. sprzedaż, a wiersze określają rzeczywistą wartość typu danych, np. 2450 USD z tytułu sprzedaży.

Aby pobrać dane w zrozumiałym formacie, należy przesłać zapytanie do bazy danych. Zapytanie to pytanie, które wymaga podania konkretnych danych jako odpowiedzi. Język zapytań, taki jak ShopifyQL, to ustandaryzowany sposób konstruowania takiego pytania. Zapytanie składa się ze słów kluczowych i odpowiadających im parametrów. Tworzy je kombinacja kilku słów kluczowych o określonych parametrach. Po utworzeniu zapytania można je wykonać i uzyskać odpowiedź.

Poniżej znajduje się przykład składni ShopifyQL zapisanej jako zapytanie. Słowa kluczowe są pogrubione, a odpowiadające im parametry są umieszczone w nawiasach. Parametry te są symbolami zastępczymi:

FROM{table_name}SHOW{column1,column2,...}GROUPBY{dimension|date_group}WHERE{condition}SINCE{date_offset}UNTIL{date_offset}ORDERBY{column}DESCLIMIT{count}

Słownik terminów

Definicje warunków ShopifyQL
Warunek Definicja
Wymiar Atrybut, który dzieli dane na segmenty, dzięki czemu można je posortować i przedstawić w bardziej przejrzysty sposób. Typowe przykłady wymiarów to czas, produkty i miejsca. Wymiary są używane jako parametry w ShopifyQL.
Słowo kluczowe Składnia ShopifyQL, która pełni funkcję polecenia kierującego zapytaniem.
Wskaźnik Ilościowy pomiar danych. Typowe przykłady wskaźników to sprzedaż całkowita, liczba zamówień i zysk brutto.
Parametr Składnia ShopifyQL identyfikująca elementy bazy danych lub szczegóły, które mają być zawarte w zapytaniu.

Tabela referencyjna słów kluczowych

Poniżej przedstawiono słowa kluczowe, których możesz użyć do napisania zapytania:

Lista słów kluczowych ShopifyQL
Słowo kluczowe Wykorzystanie funkcjonalne
FROM Określa tabelę zestawu danych, z której mają zostać wybrane dane.
SHOW Wybiera kolumny do wyodrębnienia z tabeli zestawu danych.
VISUALIZE Wyświetla dane w postaci wizualizacji liniowej lub słupkowej.
GROUP BY Grupuje wyodrębnionedane według wymiaru lub wymiary czasu.
WHERE Określa warunek lub warunki, które muszą spełnić wiersze, aby zostały wybrane.
SINCE Wyświetla dane od określonego momentu w przeszłości.
UNTIL Wyświetla dane do określonego momentu w przeszłości.
DURING Wyświetla dane od określonego momentu w przeszłości.
COMPARE TO Wyświetla dane do określonego momentu w przeszłości.
ORDER BY Określa kolumnę, według której mają być uporządkowane dane.
LIMIT Ogranicza liczbę wyświetlanych wierszy danych.
AS Zmienia nazwę kolumny na wybraną nazwę.

Pisanie zapytań ShopifyQL

Zapytania ShopifyQL mogą mieć charakter podstawowy i wówczas umożliwiają uzyskanie ogólnego wglądu w dane lub mogą być kompleksowe i dotyczyć informacji szczegółowych. Każde słowo kluczowe ma określoną funkcję, która buduje zapytanie.

Podstawy ShopifyQL: FROM i SHOW

Do utworzenia najprostszego zapytania ShopifyQL wymagane są tylko dwa słowa kluczowe: FROM i SHOW, zapisane w tej kolejności. Słowo kluczowe FROM, po którym następuje parametr nazwy tabeli, określa tabelę, do której ma być wykonane zapytanie. Słowo kluczowe SHOW, po którym następuje parametr nazwy kolumny, określa kolumny, które mają zostać wybrane.

Możesz na przykład utworzyć listę wszystkich identyfikatorów produktów i odpowiadających im tytułów z tabeli sprzedaży, pisząc poniższe zapytanie:

FROMproductsSHOWproduct_id,product_title

Dane grupowania: GROUP BY

Aby segmentowaćwskaźnikwedługwymiaru, np. sprzedaż grupowa według regionu, użyj słowa kluczowego GROUP BY. Słowo kluczowe GROUP BY można sparować z dowolnym parametrem wymiarowym.

Przykładowo zapytanie, które grupuje łączne ceny wysyłki według kraju i regionu rozliczenia, jest zapisane w poniższy sposób:

FROMordersSHOWshippingGROUPBYbilling_country,billing_region

Oto kolejne przykładowe zapytanie, w którym używany jestwymiar czasuw celu przedstawienia sprzedaży netto według miesięcy:

FROMordersSHOWnet_salesGROUPBYmonth

Powyższe zapytanie nie zwraca miesięcy, w których nie odnotowano sprzedaży. Jeśli chcesz, aby zapytanie zwróciło pełny, nieprzerwany okres czasu, użyj modyfikatora ALL:

FROMordersSHOWnet_salesGROUPBYmonthALLSINCElast_yearUNTILtoday

Jeśli używasz modyfikatora ALL, musisz również określićSINCEiUNTIL. Uwaga: modyfikator ALL działa tylko zwymiarem czasu.

Wymiary czasu

Są to wymiary czasu, których można użyć do pogrupowania danych:

Wymiary czasu ShopifyQL
Operator Wykorzystanie funkcjonalne
godzina Grupowanie według godzin w dniu kalendarzowym.
dzień Grupowanie według dnia kalendarzowego
tydzień Grupowanie według tygodnia kalendarzowego
miesiąc Grupowanie według miesiąca kalendarzowego.
kwartał Grupowanie według kwartału kalendarzowego.
rok Grupowanie według roku kalendarzowego.
hour_of_day Grupowanie według 24 godzin (1,2,...,24).
day_of_week Grupowanie według dnia tygodnia (M,T,W,...,S).
week_of_year Grupowanie według tygodnia roku (1,2,...,52).

Filtrowanie danych: WHERE

年代łowo kluczowe哪里umożliwia zastosowanie filtrawymiarowego do całego zapytania ShopifyQL.

Na przykład, jeśli chcesz uzyskać sprzedaż netto pogrupowaną według miesięcy, ale tylko dla określonego produktu, zapytanie będzie brzmiało:

FROMordersSHOWnet_salesGROUPBYmonthALLWHEREbilling_region='ohio'SINCElast_yearUNTILtoday

木菠萝widaćna powyższym przykładzie,莫żna filtrować zestaw wyników za pomocą parametru WHERE, nawet jeśli parametr ten nie jest zawarty w słowach kluczowych SHOW ani GROUP BY. W tym przypadku sprzedaż netto jest filtrowana przez wszystkie miesiące dla zamówień tylko z adresem rozliczeniowym w Ohio, nawet jeśli billing_region nie jest uwzględniony w zestawie wyników.

Operatory porównania

Słowo kluczowe WHERE wykorzystuje operatory porównania do filtrowania danych. W powyższym przykładzie użyto „=” do określenia, że zapytanie filtruje według określonej wartości, jednak dostępne są inne operatory:

Operatory porównania ShopifyQL
Operator porównania Wykorzystanie funkcjonalne
= równe
!= nierówne
< mniejsze niż
> większe niż
<= mniejsze lub równe
>= większe lub równe

Operatory logiczne

Aby jeszcze bardziej przefiltrować dane, możesz dodać do zapytania operatory logiczne. Operatory logiczne ShopifyQL to:

Operatory logiczne ShopifyQL
Operator logiczny Wykorzystanie funkcjonalne
AND Filtrowanie w celu wyświetlenia wszystkich wierszy, w których spełnione są warunki oddzielone operatorem AND.
OR Filtrowanie w celu wyświetlenia wszystkich wierszy, w których spełniony jest dowolny z warunków oddzielonych operatorem OR.
NOT Filtrowanie w celu wyświetlenia tylko wierszy, w których warunki nie są spełnione, np. wierszy, które nie zawierają określonej wartości.

Możesz użyć wielu filtrów ze słowem kluczowym WHERE, dodając operatory logiczne.

Po uzupełnieniu przykładowego zapytania dotyczącego zestawu danych, które zwraca miesięczne podsumowanie sprzedaży netto dla wszystkich zamówień z adresem rozliczeniowym w Ohio, zapytanie wygląda tak:

FROMordersSHOWnet_salesGROUPBYmonthALLWHEREbilling_region='ohio'ANDdiscounts>0SINCElast_yearUNTILtoday

Zakresy dat: SINCE and UNTIL

Jeśli chcesz filtrować zapytanie według daty lub okresu czasu, możesz użyć słów kluczowych SINCE i UNTIL oraz związanych z nimi parametrów. Te słowa kluczowe są unikalne, ponieważ filtrują tylko okresy czasu.

Przykładowo poniższe zapytanie ma na celu wyszukanie sprzedaży netto z ostatnich 12 miesięcy w Kanadzie, począwszy od dnia dzisiejszego:

FROMordersSHOWnet_salesGROUPBYmonthALLWHEREbilling_country='Canada'SINCE-12mUNTILtoday

Operatory przesunięcia

Filtrowanie może być wykonywane według określonych dat lub według przesunięć dat. Operatory przesunięcia ShopifyQL to:

Operatory przesunięcia ShopifyQL
Operator przesunięcia Wykorzystanie funkcjonalne
-{#}d Liczba dni, które upłynęły od dnia wykonania zapytania.
-{#}w Liczba tygodni, które upłynęły od dnia wykonania zapytania.
-{#}m Liczba miesięcy, które upłynęły od dnia wykonania zapytania.
-{#}q Liczba kwartał噢,ktorełynęły od dnia wykonaniazapytania.
-{#}y Liczba lat, które upłynęły od dnia wykonania zapytania.
rrrr-mm-dd Konkretna data.
dzisiaj Data wykonania zapytania.
wczoraj Okres 24-godzinny poprzedzający wykonanie zapytania.

Filtrowanie według zakresów dat: DURING

Słowo kluczowe DURING upraszcza filtrowanie dat dla zakresów dat. Możesz użyć słowa kluczowego DURING do filtrowania wyników zapytania dla znanego okresu, np. roku kalendarzowego lub określonego miesiąca, lub dla zakresów dat, które każdego roku przypadają w różnych dniach (przykładem może być Black Friday Cyber Monday). Przykład:

FROMordersSHOWsum(net_sales)GROUPBYdayALLDURINGbfcm2021

W przypadku słowa kluczowego DURING można użyć dowolnego z poniższych nazwanych operatorów zakresu dat:

Nazwane operatory zakresu dat ShopifyQL
Operator zakresu dat Wykorzystanie funkcjonalne
dzisiaj Data uruchomienia zapytania.
wczoraj Okres 24-godzinny poprzedzający wykonanie zapytania
this_week Bieżący tydzień kalendarzowy.
this_month Bieżący miesiąc kalendarzowy.
this_quarter Bieżący kwartał kalendarzowy.
this_year Bieżący rok kalendarzowy
last_week Poprzedni tydzień kalendarzowy.
last_month Poprzedni miesiąc kalendarzowy.
last_quarter Poprzedni kwartał kalendarzowy.
last_year Poprzedni rok kalendarzowy
bfcm2022 od 25做28 listopada 2022 r。
bfcm2021 26 - 29 listopada 2021 r.

Porównywanie w ramach zakresów dat: COMPARE TO

Słowo kluczowe COMPARE TO umożliwia porównywanie danych dla zakresu dat DURING i zakresu COMPARE TO. Dozwolony jest dowolny z nazwanych operatorów zakresu dat wymienionych w sekcjiDURING. Operator wykorzystywany przez COMPARE TO musi odnosić się do tej takiej samej długości czasu co w przypadku DURING. Na przykład:DURING this_week COMPARE TO last_weekjest prawidłową kombinacją, aleDURING this_week COMPARE TO last_monthjuż nie.

Poniższy przykład porównuje sprzedaż netto w Black Friday Cyber Monday 2022 r. ze sprzedażą w analogicznym okresie 2021 r.

FROMordersSHOWsum(net_sales)GROUPBYdayALLDURINGbfcm2022COMPARETObfcm2021

Sortowanie danych: ORDER BY

Sposób sortowania danych zwracanych przez zapytanie można określić za pomocą słowa kluczowego ORDER BY i jego parametrów: ASC oznaczającego kolejność rosnącą i DESC oznaczającego kolejność malejącą.

W słowie kluczowym ORDER BY można określić dowolny wskaźnik lub wymiar uwzględniony w zapytaniu, w tym wiele pól.

Na przykład to zapytanie zwraca sprzedaż netto dla każdego kraju i regionu rozliczenia, posortowaną w odwrotnej kolejności alfabetycznej według kraju rozliczenia, a następnie według regionu rozliczenia w każdym kraju.

FROMordersSHOWnet_salesGROUPBYbilling_country,billing_regionSINCE-1yUNTILtodayORDERBYbilling_country,billing_regionDESC

Kolejność zapisu wskaźników lub wymiarów ma znaczenie. Jeśli określisz wiele wartości dla parametru ORDER BY, każdy wskaźnik lub wymiar zostanie posortowany w podanej kolejności.


Limit

Słowo kluczowe LIMIT umożliwia określenie liczby wierszy zwracanych przez zapytanie. Jest ono przydatne, gdy chcesz tylko zorientować się, jak będą wyglądały dane w poszczególnych kolumnach. Możesz też użyć go w połączeniu ze słowem ORDER BY, aby utworzyć uporządkowane listy.

W poniższym przykładzie użyto słów kluczowych LIMIT i ORDER BY, aby utworzyć listę 10 najlepiej sprzedających się produktów według ilości w ciągu ostatnich 3 miesięcy:

FROMproductsSHOWnet_product_quantityGROUPBYproduct_titleSINCE-3mUNTILtodayORDERBYnet_product_quantityDESCLIMIT10

Tworzenie wykresów zapytań: VISUALIZE i TYPE

Słowo kluczowe VISUALIZE umożliwia napisanie zapytania ShopifyQL, które wyświetla dane w postaci wizualizacji liniowej lub słupkowej.

Słowo kluczowe TYPE jest opcjonalne i musi mu towarzyszyć 'line' lub 'bar', aby zapytanie zwróciło wizualizację w postaci wykresu liniowego lub słupkowego. Jeśli słowo TYPE nie jest zawarte w zapytaniu, wówczas ShopifyQL automatycznie wybiera najlepszą wizualizację, która pasuje do zapytania. Jeśli zapytanie nie może zostać zwizualizowane w takiej formie, w jakiej zostało napisane, wówczas ShopifyQL zwraca dane tabelaryczne.

Możesz na przykład określić trend sprzedaży w ciągu ostatniego roku według miesięcy za pomocą linii trendu. Poniższe zapytanie zwraca wykres szeregu czasowego, na którym wyświetlana jest sprzedaż brutto w poszczególnych miesiącach w ciągu ostatniego roku. Sprzedaż jest przedstawiona za pomocą pojedynczej linii z osią x oznaczoną jako miesiąc i osią y oznaczoną jako sprzedaż brutto:

FROMordersVISUALIZEgross_salesTYPElineGROUPBYmonthALLSINCE-1yUNTILtoday

Operatory matematyczne

ShopifyQL umożliwia wykonywanie działań arytmetycznych na wskaźnikach w danych. Dostępne są następujące operatory matematyczne:

Operatory przesunięcia ShopifyQL
Operator matematyczny Wykorzystanie funkcjonalne
+ Dodawanie dwóch liczb.
- Odejmowanie dwóch liczb.
* Mnożenie dwóch liczb.
/ Dzielenie dwóch liczb.

Poniższe zapytanie oblicza na przykład wartość zamówienia dla każdego regionu w ciągu ostatniego roku. Korzystając z operatorów matematycznych ze wskaźnikami, możesz użyć słowa kluczowego AS, aby przypisać nową nazwę do nowego wskaźnika.

FROMordersSHOW(net_sales+returns)ASorder_value,orders,(net_sales+returns)/ordersASsales_per_orderGROUPBYbilling_regionSINCE-1yUNTILtoday

Funkcje

Funkcje ShopifyQL pozwalają na agregowanie kolumn w sposób podobny do tabel przestawnych w programie Microsoft Excel. Agregowanie kolumn oznacza łączenie ich w celu uzyskania nowej wartości. W aktualnej wersji ShopifyQL dostępne są następujące operatory funkcyjne:

Operatory przesunięcia ShopifyQL
Operator funkcyjny Wykorzystanie funkcjonalne
count() Liczba wystąpień w zbiorze wyników.
sum() Suma wartości w zbiorze wyników.
min() Minimalna wartość w zbiorze wyników.
max() Maksymalna wartość w zbiorze wyników.
avg() Średnia wartość ustawionego wyniku.

Funkcjesum,min,maxiavgmogą być używane tylko z wartościami numerycznymi,countmożna używać do liczenia różnych wystąpień atrybutów wymiarowych. Nie można użyć zagregowanych pól jako argumentów w funkcjach. Zagregowane pola kończą się_sum,_countlub_percent.

Na przykład poniższe zapytanie zwraca błąd, ponieważ wykonana już została agregacja total_sales:

FROMordersSHOWsum(total_sales)

Poniżej przedstawiono prawidłowe zapytanie, które łączy zagregowane pola z funkcjami agregującymi:

FROMordersSHOWaverage_order_value,sum(gross_sales)GROUPBYbilling_regionSINCE2021-01-01UNTIL2021-12-31

To zapytanie zwraca zagregowaną sumę średniej wartości zamówienia i sumę sprzedaży brutto jako wynik funkcjisum. Wskaźniki te są podzielone według regionu rozliczenia dla wszystkich zamówień złożonych w 2021 roku.


Komentarze

Możesz użyć komentarzy, aby wyjaśnić sekcje instrukcji ShopifyQL lub zapobiec wykonaniu instrukcji ShopifyQL. Każdy tekst w komentarzu zostanie zignorowany podczas wykonywania instrukcji.

Komentarze jednowierszowe zaczynają się od--i kończą na końcu wiersza.

Komentarze wielowierszowe zaczynają się od/*i kończą się na*/.

FROMordersSHOWaverage_order_value,sum(gross_sales)-- the line below has been commented out and will not run-- GROUP BY billing_regionWHEREbilling_country='United States'/* this line and the two lines below it have been commented out and will not run SINCE 2021-01-01 UNTIL 2021-12-31 */

Gotowy(-a) do rozpoczęcia sprzedaży za pomocą Shopify?

Wypróbuj za darmo