ShopifyQL sorgu düzenleyicisini kullanma
İşletmenizin veritabanını keşfetmek ve işletmenizi daha derinlemesine anlamanızı sağlayan verileri almak için yeni Shopify Analiz ile birlikte ShopifyQL kullanabilirsiniz.
ShopifyQL veya Shopify Sorgu Dili, Shopify'ın ticarete yönelik olarak oluşturulan yerleşik sorgu dilidir. Sorgu dilleri, veritabanlarından veri talep etmek ve almak için kullanılır. Mağazanızın verileri, tanımlanmış sütunlar ve satırlar halinde yapılandırılmış veritabanı tablolarında depolanır. Sütunlar, içerdikleri bilgi türünü tanımlar (ör. satışlar), satırlar ise veri türünün gerçek değerini (ör. satışlardaki 2.450 USD) belirtir
Verilerinizin anlamlı bir biçimde alınabilmesi için veritabanına bir sorgu gönderilmesi gerekir. Sorgu, anahtar sözcüklerden ve bunlara karşılık gelen parametrelerden oluşan, yanıt olarak belirli verileri isteyen bir sorudur. Birkaç anahtar sözcüğün belirli parametrelerle birleşimi sorgunuzu oluşturur. Oluşturduktan sonra sorgunuzu çalıştırabilir ve rapor alabilirsiniz.
Bu sayfada
Terimler sözlüğü
Dönem | Tanım |
---|---|
Boyut | Verileri bölümlere ayırarak daha net bir şekilde sıralanabilmesi ve sunulabilmesini sağlayan bir nitelik. Boyutla ilgili yaygın örnekler arasında zaman, ürünler ve yerler yer alır. Boyutlar, ShopifyQL'de parametre olarak kullanılır. |
Anahtar sözcük | Sorgunuzu yönlendirmek için komut işlevinde davranan ShopifyQL sözdizimi. |
Metrik | Verilerin nicel ölçümü. Metriklerin yaygın örnekleri arasında toplam satışlar, sipariş sayısı ve brüt kar yer alır. |
Parametre | Sorgunuza dahil edilecek veritabanı öğelerini veya ayrıntılarını tanımlayan ShopifyQL sözdizimi. |
Operatör | Bir sorgunun parçası olarak kullanılan, ayrılmış bir sözcük veya karakter. Örneğin: STARTS WITH , >= veya last_week . |
ShopifyQL sözdizimi
ShopifyQL'i kullanarak geçerli bir rapor sorgusu oluşturmak için aşağıdaki gereklilikleri karşılamanız gerekir:
- Sorgunun tamamını tek bir satıra veya ayrı satırlara yerleştirebilirsiniz.
- Uygun parametrelerle birlikte
FROM
veSHOW
anahtar sözcüklerini eklemeniz gerekir. Diğer tüm anahtar sözcükler ve parametreler isteğe bağlıdır. - Bir sorgudaki tüm anahtar kelimeler aşağıdaki sıraya göre dahil edilmelidir:
-
FROM
-
SHOW
-
WHERE
-
GROUP BY
-
WITH
TOTALS
,GROUP_TOTALS
,PERCENT_CHANGE
-
TIMESERIES
-
HAVING
-
SINCE
veUNTIL
veyaDURING
-
COMPARE TO
ve isteğe bağlıUNTIL
-
ORDER BY
-
LIMIT
-
VISUALIZE
veTYPE
-
Bu, doğru söz diziminin kullanıldığı ve sorgu olarak yazılmış bir ShopifyQL örneğidir. Anahtar kelimeler kalın harflerle yazılmıştır, bunlara karşılık gelen parametreler genel yer tutucular kullanılarak dahil edilmiştir ve isteğe bağlı parametreler parantez içindedir:
ShopifyQL anahtar sözcükleri
ShopifyQL sorguları, temel (yüksek düzeyde veri analizleri için ) ve kapsamlıyı (ayrıntılı analizler için) içeren bir yelpazeye yayılır. Her anahtar kelimenin, sorgunuzu oluşturan belirli bir işlevi vardır.
Anahtar sözcük | Açıklama |
---|---|
FROM | Hangi veri kümesi tablosundan veri seçileceğini belirtir. |
SHOW | Veri kümesi tablosundan çıkarmak istediğiniz sütunları seçer. |
WHERE | Satırların seçilebilmesi için karşılaması gereken koşul veya koşulları tanımlar. |
GROUP BY | Ayıklanan verileri boyut veya zaman boyutlarına göre gruplandırır. |
WITH | Belirli ShopifyQL anahtar sözcüklerinin davranışını değiştirir. |
TIMESERIES | Bir sorgudaki zaman boyutlarına ve geri doldurma tarihlerine göre gruplandırmayı ayırır. |
HAVING | Sorgunun sonuçlarını gruplandıktan sonra filtreler. |
SINCE | Geçmişteki belirli bir zamandan beri olan verileri gösterir. Genellikle UNTIL ile birlikte kullanılır. |
UNTIL | Geçmişteki belirli bir zamana kadar olan verileri gösterir. Genellikle SINCE veya COMPARE TO ile birlikte kullanılır. |
DURING | Geçmişteki belirli bir zamandaki verileri gösterir. |
COMPARE TO | Geçmişte belirli bir zamanla karşılaştırarak verileri gösterir. |
ORDER BY | Verilerin hangi sütuna göre sıralanacağını belirtir. |
LIMIT | Gösterilen veri satırlarının sayısını sınırlar. |
VISUALIZE | Verilerinizi bir çizgi veya çubuk grafiğiyle görüntüler. TYPE anahtar sözcüğünü kullanarak hangi görselleştirme yöntemini istediğinizi seçebilirsiniz. |
AS | Bir sütunu seçtiğiniz bir adla yeniden adlandıran isteğe bağlı anahtar kelime. |
FROM ve SHOW
En basit ShopifyQL sorgusunu oluşturmak için yalnızca iki anahtar kelime gerekir: sırasıyla FROM
ve SHOW
. Bir veya daha fazla tablo adı parametresinden önce gelen FROM
, sorgulamak istediğiniz tabloları belirtir. Sütun adı parametrelerinden önce gelen SHOW
, seçmek istediğiniz sütunları belirtir.
SHOW
metriklerin ve boyutların raporda döndürüleceği sırayı belirtmek için kullanılabilir.
Örneğin, şu sorguyu yazarak toplam satışları döndürebilirsiniz:
WHERE
WHERE
anahtar sözcüğü, ShopifyQL sorgusunun tümüne boyutsal filtre uygulamanıza olanak tanır. Filtre karşılaştırma operatörleri (örneğin, şu değerden yüksek: >
), mantıksal operatörler (örneğin, AND
veya NOT
) ve kısmi dize ile dizi eşleştirme (örneğin, STARTS WITH
ve CONTAINS
) kullanılarak değiştirilebilir.
WHERE
Koşullar aşağıdaki gereklilikleri karşılamalıdır:
- Değerler çift tırnak işareti (") değil, tek tırnak işareti (') arasında olmalıdır.
- Koşullar herhangi bir aritmetik öğe içeremez.
- Koşullar metriğe değil yalnızca bir boyuta referans verebilir.
Örneğin, toplam satışları döndürmek ancak fatura ülkesine göre filtrelemek istiyorsanız sorgunuz şu şekilde olmalıdır:
Yukarıdaki örnekte gördüğünüz gibi WHERE
parametresini kullanarak sonuçları filtreleyebilirsiniz. Parametrenin SHOW
anahtar sözcüğüne dahil edilmiş olması gerekmez. Bu örnekte, billing_country
sonuç kümesine dahil edilmemiş olsa bile toplam satışlar yalnızca Kanada'dan verilen siparişleri içerecek şekilde filtrelenmiştir.
Karşılaştırma operatörleri
WHERE
anahtar sözcüğü, verileri filtrelemek için karşılaştırma operatörlerini kullanır. Yukarıdaki örnekte =
, sorgunun belirli bir değere göre filtrelendiğini belirtmek için kullanılmıştır. Ancak kullanabileceğiniz başka operatörler de vardır:
Karşılaştırma operatörü | Açıklama |
---|---|
= | şuna eşit: |
!= | şuna eşit değil: |
< | şu değerden düşük: |
> | şu değerden yüksek: |
<= | şu değerden düşük veya ona eşit: |
>= | şu değerden yüksek veya ona eşit: |
Mantıksal operatörler
Verilerinizi daha fazla filtrelemek için sorgunuza mantıksal operatörler ekleyebilirsiniz. ShopifyQL mantıksal operatörleri şunlardır:
Mantıksal operatör | Açıklama |
---|---|
AND |
AND ile ayrılan koşulların karşılandığı tüm satırları dahil etmek için filtreleyin. |
OR |
OR ile ayrılan koşullardan herhangi birinin karşılandığı tüm satırları dahil etmek için filtreleyin. |
NOT | Yalnızca koşulların karşılanmadığı satırları (ör. belirtilen değeri içermeyen satırlar) gösterecek şekilde filtreleyin. |
Mantıksal operatörler ekleyerek WHERE
anahtar sözcüğüyle birden fazla filtre kullanabilirsiniz.
Fatura adresleri yalnızca Kanada'da bulunan, indirim uygulanmış ve kurutulmuş şeftali içeren tüm siparişlerin net satışlarının aylık gruplandırılması için örnek veri kümesi sorgusuna eklenecek sorgu şu şekildedir:
GROUP BY
Bir metriği boyuta göre segmentlere ayırmak (ör. bölgeye göre satışları gruplandırma) istiyorsanız GROUP BY
anahtar sözcüğünü kullanın. GROUP BY
anahtar sözcüğü herhangi bir boyut parametresiyle eşleştirilebilir.
Örneğin, fatura ülkesine ve bölgesine göre toplam satışları gruplandıran bir sorgu şu şekilde yazılır:
Aya göre toplam satışları görüntülemek için zaman boyutunu kullanan bir sorgu örneği aşağıda verilmiştir:
Yukarıdaki sorgu, satış yapmadığınız hiçbir ayı döndürmez. Tam ve kesintisiz bir zaman dilimini döndüren sorgu istiyorsanız TIMESERIES
anahtar sözcüğünü kullanın.
Zaman Boyutları
Bunlar, verilerinizi gruplandırmak için kullanabileceğiniz zaman boyutlarıdır:
Operatör | Açıklama |
---|---|
second | Saatin saniyesine göre gruplandırma. |
minute | Saatin dakikasına göre gruplandırma. |
hour | Takvim günü saatlere göre gruplama. |
day | Takvim gününe göre gruplandırma. |
week | Takvim haftasına göre gruplandırma. |
month | Takvim ayına göre gruplandırma. |
quarter | Takvim çeyreğine göre gruplandırma. |
year | Takvim yılına göre gruplandırma. |
hour_of_day | 24 saate göre gruplandırma (1, 2, ..., 24). |
day_of_week | "day of week" (haftanın günü) bilgisine (P, S, Ç, ..., P) göre gruplandırma. |
week_of_year | Yılın haftasına (1, 2, ..., 52) göre gruplandırma. |
month_of_year | Yılın ayına göre gruplandırma (1, 2, ..., 12). |
TIMESERIES
Gruplandırmayı zaman boyutlarına göre ayırmak, zaman içindeki metrikleri görüntülemek ve bir sorgudaki tarihleri geri doldurarak tarihin olmadığı bir zaman serisi grafiğine dönüştürmek istediğinizde TIMESERIES
anahtar sözcüğünü kullanabilirsiniz.
Bu örnekte, son 15 güne ait eksik toplam satışlar verileri geri doldurulur:
TIMESERIES ve sütunların sırası
TIMESERIES
anahtar sözcüğünün verilip verilmediğine ve GROUP BY
veya SHOW
değerlerinin birinde bulunup bulunmadığına bağlı olarak sütunların sırası değişebilir.
TIMESERIES | SHOW | GROUP BY | Sonuç |
---|---|---|---|
Verildi | Mevcut değil | Mevcut değil |
TIMESERIES ilk boyuttur. |
Verildi | Mevcut değil | Bulunuyor | Zaman boyutlarının konumu, GROUP BY içindeki konumuna göre belirlenir. |
Verildi | Bulunuyor | Bulunuyor | Zaman boyutlarının konumu, SHOW içindeki konumuna göre belirlenir. |
Verilmedi | Mevcut değil | Bulunuyor | Zaman boyutlarının konumu, GROUP BY içindeki konumuna göre belirlenir. Veriler geri doldurulmadı. |
Verilmedi | Bulunuyor | Bulunuyor | Zaman boyutlarının konumu, SHOW içindeki konumuna göre belirlenir. Veriler geri doldurulmadı. |
Verilmedi | Bulunuyor | Mevcut değil |
SHOW yalnızca GROUP BY içindeki boyutlara referans verebildiğinden söz dizimi hatasına neden olur. |
HAVING
WHERE
anahtar sözcüğüne benzer olarak HAVING
anahtar sözcüğünü kullanarak gruplanan sorgu sonuçlarını filtreleyebilirsiniz. Filtrenin tek bir koşulu olabilir ancak bu koşul hem karşılaştırma operatörleri (ör. şu değerden yüksek: >
) hem de mantıksal operatörler (örneğin, AND
veya NOT
) tarafından değiştirilebilir. WHERE
anahtar sözcüğünün aksine HAVING
, diğer adlara, toplama işlevlerine ve gruplandırma sütunlarına referans verebilir.
HAVING
sorgunuzda bir GROUP BY
veya TIMESERIES
olmasını gerektirir. Bunun nedeni, HAVING
anahtar sözcüğünün GROUP BY
veya TIMESERIES
tarafından gruplanan sorgu sonuçlarını filtrelemesidir.
Bu örnekte, toplam satışı 1.000'den büyük ve 5.000'den az olan her ürün için toplam satışlar filtrelenir:
WITH
WITH
anahtar sözcüğü, bazı diğer ShopifyQL anahtar sözcüklerinin davranışını değiştirir. Kullanılabilen 3 değişiklik vardır:
-
TOTALS
: Herhangi bir boyuta göre dağıtılmadan önce metriklerin üst düzey bir özetini sağlar. -
GROUP_TOTALS
: Toplama yoluyla bir grup oluşturulduğunda tüm alt gruplar için bir toplam sağlar. -
PERCENT_CHANGE
:COMPARE TO
içindeki tüm karşılaştırma sütunlarına değişim yüzdesi metriği ekler. Bu değiştirici mevcut olduğunda, her karşılaştırma metriği sütunu için değişim yüzdesi içeren yeni bir sütun eklenir.
TOTALS
TOTALS
değiştiricisi, metriklerin başka bir boyuta göre dağılmalarından önce üst düzey bir özetlerini sağlar. WITH TOTALS
öğesini kullandığınızda sorgu, sonuçlar kümesinde toplamları ek sütunlar olarak döndürür. Metrik adı ve "toplamlar" sütun adının bir parçası olarak gösterilir. Her satır geçerli tüm toplamları içerir.
Örneğin, bu sorguda toplam satışların toplamı gösterilir:
Bu sorgu, aşağıdakine benzer bir rapor döndürebilir:
Gün | Brüt satışlar | Net satışlar | Toplam satış | Brüt satışların toplamı | Net satışların toplamı | Toplam satışlar |
---|---|---|---|---|---|---|
01.01.2024 | 1 | 4 | 7 | 6 | 15 | 24 |
02.01.2024 | 2 | 5 | 8 | 6 | 15 | 24 |
01.03.2024 | 3 | 6 | 9 | 6 | 15 | 24 |
GROUP_TOTALS
GROUP_TOTALS
değiştiricisi, toplama yoluyla bir grup olduğunda tüm alt gruplar için toplam sağlar. WITH GROUP_TOTALS
öğesini kullandığınızda sorgu, sonuçlar kümesinde toplamları ek sütunlar olarak döndürür. Metrik adı, toplanan boyutlar ve "toplamlar" sütun adının bir parçası olarak gösterilir. Her satır geçerli tüm toplamları içerir.
Örne ğin, bu sorguda faturanın kesildiği ülkeye göre toplam satışların toplamı gösterilir:
Bu sorgu, aşağıdakine benzer bir rapor döndürebilir:
Ülke | Müşteri kimliği | Toplam satış | Toplam satışlar ülke toplamları | Toplam satışlar |
---|---|---|---|---|
ABD | 1 | 1 | 0 | 1 |
ABD | null | -1 | 1 | 1 |
Kanada | 1 | 1 | 1 | 1 |
PERCENT_CHANGE
PERCENT_CHANGE
değiştiricisi, COMPARE TO
kullanıldığında tüm karşılaştırma sütunlarına değişim yüzdesi metriği ekler. WITH PERCENT_CHANGE
değiştiricisini kullandığınızda sorgu, sonuçlar kümesinde her bir karşılaştırma metriği için değişim yüzdesini döndürür. Metrik adı ve "değişim yüzdesi" sütun adının parçası olarak gösterilir.
Değişim yüzdesinin hesaplanmasında kullanılan formül şu şekildedir: (base_column - comparison_column) * 100 / abs(comparison_column)
Örneğin, bu sorguda bir önceki ayın günlük net satışlarını bir önceki yılın aynı ayı ile karşılaştırmak için SINCE
ve COMPARE TO
kullanılmış ve değişim yüzdesi sütununa yer verilmiştir:
Ortaya çıkan rapordaki sütunlar, gün, net satışlar, karşılaştırma günü, karşılaştırma net satışları ve net satışların değişim yüzdesini içerir.
SINCE ve UNTIL
Sorgunuzu bir tarihe veya belirli bir zaman dilimine göre filtrelemek istiyorsanız SINCE
ve UNTIL
anahtar sözcüklerini ve bunlarla ilişkili parametreleri kullanabilirsiniz. Yalnızca zaman dilimlerini filtrelediklerinden bu anahtar sözcükler benzersizdir. SINCE
kullanıp UNTIL
değeri belirlemediyseniz zaman aralığınızın bitiş tarihi varsayılan olarak today
değeridir.
Örneğin, son tarihi dün olmak üzere son 12 ayda Kanada'da gerçekleşen net satışları bulmaya yönelik bir sorgu şu şekildedir:
Tarih aralığı operatörleri
Belirli tarihlere veya tarih aralıklarına göre filtre oluşturabilirsiniz. ShopifyQL'deki aralık operatörleri şunlardır:
Tarih aralığı operatörü | Açıklama |
---|---|
-{#}s | Sorgunun çalıştırıldığı tarih ve saatten itibaren geçen saniye sayısı. |
-{#}min | Sorgunun çalıştırıldığı tarih ve saatten itibaren geçen dakika sayısı. |
-{#}h | Sorgunun çalıştırıldığı tarih ve saatten itibaren geçen saat sayısı. |
-{#}d | Sorgunun çalıştırıldığı tarih ve saatten itibaren geçen gün sayısı. |
-{#}w | Sorgunun çalıştırıldığı tarih ve saatten itibaren geçen hafta sayısı. |
-{#}m | Sorgunun çalıştırıldığı tarih ve saatten itibaren geçen ay sayısı. |
-{#}q | Sorgunun çalıştırıldığı tarih ve saatten itibaren geçen çeyrek sayısı. |
-{#}y | Sorgunun çalıştırıldığı tarih ve saatten itibaren geçen yıl sayısı. |
yyyy-MM-dd | Belirli bir tarih. |
yyyy-MM-ddThh:mm:ss | Belirli bir tarih ve saat. |
Tarih işlevleri
Aşağıdaki işlevleri tüm tarih aralığı operatörleriyle (belirli tarihler hariç) birlikte SINCE
ve UNTIL
durumlarında kullanabilirsiniz. "startOf...
" işlevi, SINCE
ile birlikte kullanıldığında ilişkili zaman biriminin başlangıcını (dakika, saat, gün, hafta, ay, çeyrek ve yıl) kısaltır. "endOf...
" işlevi ise UNTIL
birlikte kullanıldığında ilişkili zaman biriminin bitişini kısaltır.
Geçerli bir sonuç döndürmek için tarih işlev birimleri ve operatör birimleri eşleşmelidir. Örneğin, startOfMonth(-1m)
doğrudur ancakstartOfMonth(-1d)
doğru değildir.
Tarih işlevi | Açıklama |
---|---|
now | Sorgunun çalıştırıldığı tarih ve saat. |
startOfMinute(-{#}min) | Tarih aralığı operatörünü hedef dakikanın başlangıcına kadar kısaltır. |
endOfMinute(-{#}min) | Tarih aralığı operatörünü hedef dakikanın sonuna kadar kısaltır. |
startOfHour(-{#}h) | Tarih aralığı operatörünü hedef saatin başlangıcına kadar kısaltır. |
endOfHour(-{#}h) | Tarih aralığı operatörünü hedef saatin sonuna kadar kısaltır. |
startOfDay(-{#}d) | Tarih aralığı operatörünü hedef günün başlangıcına kadar kısaltır. |
endOfDay(-{#}d) | Tarih aralığı operatörünü hedef günün sonuna kadar kısaltır. | startOfWeek(-{#}w) | Tarih aralığı operatörünü hedef haftanın başlangıcına kadar kısaltır. |
endOfWeek(-{#}w) | Tarih aralığı operatörünü hedef haftanın sonuna kadar kısaltır. |
startOfMonth(-{#}m) | Tarih aralığı operatörünü hedef ayın başlangıcına kadar kısaltır. |
endOfMonth(-{#}m) | Tarih aralığı operatörünü hedef ayın sonuna kadar kısaltır. |
startOfQuarter(-{#}q) | Tarih aralığı operatörünü hedef çeyreğin başlangıcına kadar kısaltır. |
endOfQuarter(-{#}q) | Tarih aralığı operatörünü hedef çeyreğin sonuna kadar kısaltır. |
startOfYear(-{#}y) | Tarih aralığı operatörünü hedef yılın başlangıcına kadar kısaltır. |
endOfYear(-{#}y) | Tarih aralığı operatörünü hedef yılın sonuna kadar kısaltır. |
Örneğin, bugün 8 Kasım 2022 ise 1 Ocak 2020 ile 31 Ekim 2022 arasındaki brüt satışları döndürmek için aşağıdaki sorguyu kullanabilirsiniz:
DURING
DURING
anahtar sözcüğü, tarih aralıkları için tarihe göre filtrelemeyi basitleştirir ve SINCE
ile UNTIL
kullanımın yerine geçer. Takvim yılı veya belirli bir ay gibi bilinen bir zaman aralığı ya da Black Friday Cyber Monday gibi her yıl tarihleri değişen tarih aralıklarını kullanarak sorgu sonuçlarını filtrelemek için DURING
anahtar sözcüğünü kullanabilirsiniz. Örneğin:
Adlandırılmış tarih aralığı operatörleri
DURING
aşağıdaki adlandırılmış tarih aralığı operatörlerinden herhangi birini kabul eder:
Adlandırılmış tarih aralığı operatörü | Açıklama |
---|---|
today | Sorgunun çalıştırıldığı tarih. |
yesterday | Sorgunun çalıştırıldığı tarihten önceki 24 saatlik zaman aralığı. |
this_week | İçinde bulunulan takvim haftası. |
this_month | İçinde bulunulan takvim ayı. |
this_quarter | İçinde bulunulan takvim çeyreği. |
this_year | İçinde bulunulan takvim yılı. |
last_week | Önceki takvim haftası. |
last_month | Önceki takvim ayı. |
last_quarter | Önceki takvim çeyreği. |
last_year | Önceki takvim yılı. |
bfcmYYYY | Belirtilen yıl için Black Friday Cyber Monday aralığı. Örneğin, bfcm2022 25-28 Kasım 2022 sonucunu döndürür. |
COMPARE TO
COMPARE TO
anahtar sözcüğü, SINCE
ve UNTIL
veya DURING
ve COMPARE TO
içindeki tarih aralıklarının verilerini karşılaştırmanıza olanak tanır.
COMPARE TO
anahtar sözcüğünü aşağıdaki parametre türleriyle birlikte kullanabilirsiniz:
-
2023-01-01
gibi kesin tarihler: Belirtilen döneme ait metrikleri ve kesin tarihte aynı döneme ait karşılaştırma metriklerini içerir. -
last_week
gibi adlandırılmış tarihler: Belirtilen döneme ait metrikleri ve adlandırılmış tarihte aynı döneme ait karşılaştırma metriklerini içerir.-
COMPARE TO
tarafından kullanılan operatör,DURING
tarafından kullanılan operatörler aynı uzunlukta olmak zorunda değildir.UNTIL
değeri sağlanmadıysa zaman aralığını,DURING
öğesinde belirtilen değerle aynı olacak şekilde kabul ederek hesaplama yapar. Örneğin,DURING this_week COMPARE TO last_month
bu haftanın verilerini, geçen ayın başında başlayan bir haftalık dönemle karşılaştırır.
-
-3q
gibi tarih aralıkları: Belirtilen döneme ait metrikleri ve göreli tarihte aynı döneme ait karşılaştırma metriklerini içerir.-1y, -2y
gibi birden fazla tarih karşılaştırması: Belirli bir tarih aralığındaki verilerinizi birden fazla tarih aralığıyla karşılaştırın. Birkaç dönemde gerçekleşen değişiklikleri izlemek istediğinizde bu yararlı olabilir.Sorguda
COMPARE TO
ile birlikte bir tarih boyutu kullanmıyorsanız sorgu içinGROUP BY
yerineTIMESERIES
öğesini kullanmanız gerekir.
Aşağıdaki örnekte önceki ayın net satışları önceki yılın aynı ayıyla karşılaştırılır:
Göreli tarih aralığı operatörleri
Göreli operatörler, temel tarih aralığıyla aynı süreyi, belirtilen dönem kadar geriye giderek döndürür. Adlandırılmış tarih aralığı operatörlerine ek olarak COMPARE TO
aşağıdaki göreli operatörleri kabul eder:
Göreli tarih aralığı operatörü | Açıklama |
---|---|
previous_period | Temel tarih aralığından bir dönem önce. |
previous_year | Temel tarih aralığından bir yıl önce. |
previous_quarter | Temel tarih aralığından bir çeyrek önce. |
previous_month | Temel tarih aralığından bir ay önce. |
previous_week | Temel tarih aralığından bir hafta önce. |
previous_day | Temel tarih aralığından bir gün önce. |
previous_hour | Temel tarih aralığından bir saat önce. |
previous_minute | Temel tarih aralığından bir dakika önce. |
previous_second | Temel tarih aralığından bir saniye önce. |
ORDER BY
ORDER BY
anahtar sözcüğünü ve parametrelerini kullanarak sorgunuz tarafından döndürülen verileri nasıl sıralamak istediğinizi belirtebilirsiniz. Artan düzen için ASC
ve azalan düzen için DESC
parametrelerini kullanabilirsiniz.
Sorgunuza dahil ettiğiniz herhangi bir metriği veya boyutu (birden çok alan dahil) ORDER BY
anahtar sözcüğünde belirtebilirsiniz.
Örneğin, bu sorgu tüm ürün ve varyasyonların geçen yılki net satışlarını döndürür. Sonuçlar önce ürün başlığına göre alfabetik sırayla, ardından ürün türüne göre ters alfabetik düzende sıralanır:
Metriklerinizi veya boyutlarınızı hangi sırayla yazdığınız önemlidir. ORDER BY
için birden fazla değer belirtirseniz sıralama, her metrik ya da boyuta belirtilen sırayla uygulanır.
TIMESERIES ve sütunların sırası
Sorgunun TIMESERIES
ve ORDER BY
öğelerini içerip içermediğine göre sütunların sırası değişebilir.
TIMESERIES | ORDER BY | Sonuç |
---|---|---|
Bulunuyor | Mevcut değil | Sonuçlar TIMESERIES boyutuna göre sıralanır. |
Bulunuyor | Bulunuyor | Sonuçlar TIMESERIES zaman boyutuna ve ardından ORDER BY boyutuna göre sıralanır. |
Mevcut değil | Bulunuyor | Sonuçlar ORDER BY boyutuna göre sıralanır. |
Mevcut değil | Mevcut değil | Sonuçlar ilk SHOW sütununa göre sıralanır. |
LIMIT
LIMIT
anahtar sözcüğü, sorgunun döndüreceği maksimum satır sayısını belirtmenize olanak tanır. Bu, her bir sütundaki verilerin nasıl görüntülendiğini anlamak istediğinizde veya sorguların değer döndürmesinin daha uzun sürebileceği daha büyük raporlar için kullanışlıdır. LIMIT
anahtar sözcüğünü ORDER BY
ile birleştirerek en iyi ve en kötü listeleri oluşturabilirsiniz.
Bir LIMIT
değeri belirtmezseniz sorgu varsayılan olarak 1.000 şeklinde ayarlanır.
Satır verilerini döndürmeye başlamadan önce belirli bir satır sayısını atlamak için isteğe bağlı { OFFSET # }
parametresini kullanabilirsiniz. Bunun sonucunda ortaya çıkan ifade şu şekilde biçimlendirilir: LIMIT 15 { OFFSET 5 }
.
Son 3 ay içinde en çok satılan ilk 10 ürün listesini oluşturmak için LIMIT
ve ORDER BY
anahtar sözcüklerinin kullanıldığı örnek şu şekildedir:
VISUALIZE ve TYPE
VISUALIZE
anahtar sözcüğü, verileri bir grafikte görselleştirmenizi sağlayan ShopifyQL sorgusu yazmanıza olanak tanır. Desteklenen görselleştirmeler aşağıdaki değerleri içerir:
-
bar
-
stacked_bar
-
stacked_horizontal_bar
-
line
-
simple_bar
-
stacked_area
-
single_metric
-
donut
-
list
-
list_with_dimension_values
-
horizontal_bar
-
cohort
-
single_stacked_bar
-
funnel
-
grouped_bar
-
horizontal_grouped_bar
-
table
-
grid
TYPE
anahtar sözcüğü isteğe bağlıdır ve tek bir tür görselleştirmeyle birlikte kullanılmalıdır. TYPE
sorgunuzda yer almıyorsa ShopifyQL, sorgunuza en uygun görselleştirmeyi otomatik olarak belirler. Sorgunuz yazılı olarak görselleştirilemiyorsa ShopifyQL verileri tablo biçiminde döndürür.
VISUALIZE
ayrıca, parametrenin oluşturulacak sınırlı sayıda veri noktası olduğu isteğe bağlı LIMIT
anahtar sözcüğünü de kabul eder.
Örneğin, bir trend çizgisi ile geçen yıla ait satış trendinizi ay bazında görselleştirebilirsiniz. Aşağıdaki sorgu, geçen yıl boyunca gerçekleşen brüt satışları aya göre gösteren zaman serisi grafiği döndürür. Brüt satışlar, x ekseni ay olarak ve y ekseni brüt satış olarak etiketlenerek tek bir satırla gösterilir:
AS
AS
anahtar sözcüğü isteğe bağlıdır. Bir sütunu yeniden adlandırmanıza (ya da diğer ad sağlamanıza) veya toplama işlevinin değerini döndürmenize olanak tanır.
AS
yalnızca tek bir parametre kabul eder. Diğer adda boşluk varsa bu diğer adı çift tırnak (") içine almanız gerekir.
Diğer ShopifyQL işlevleri ve operatörleri
ShopifyQL aşağıdaki ek operatörleri ve işlevleri içerir:
-
Matematiksel operatörler, örneğin:
+
veya/
-
İşlevler, örneğin:
round()
vetrim()
- Örtük birleştirmeler
-
Kısmi dize ile dizi eşleştirme, örneğin:
STARTS WITH
veCONTAINS
- Yorumlar
Matematiksel operatörler
ShopifyQL, verilerinizdeki metriklerle aritmetik işlemler yapılmasına izin verir. Mevcut matematiksel operatörler aşağıda verilmiştir:
Matematiksel Operatör | Açıklama |
---|---|
+ | İki sayının eklenmesi. |
- | İki sayının çıkarılması. |
* | İki sayının çarpılması. |
/ | İki sayının bölünmesi. |
Örneğin, aşağıdaki sorguda her bölge için son bir yıldaki sipariş değeri hesaplanır. Matematiksel operatörleri metriklerle kullanırken, yeni metriğe yeni bir ad atamak için AS
anahtar sözcüğünü kullanabilirsiniz.