Notebooks'ta ShopifyQL kullanma
ShopifyQL, Shopify'ın ticarete yönelik oluşturulan sorgu dilidir. Sorgu dilleri, veritabanlarından veri talep etmek ve almak için kullanılır. İşletmenizin veritabanını keşfetmek ve işletmenizi daha derinlemesine anlamanızı sağlayan verileri almak için Shopify'ın Notebooks uygulamasıyla birlikte ShopifyQL kullanabilirsiniz.
ShopifyQL Notebook sorgularında kullanılabilen değerlerin ve boyutların tam listesi için Siparişler şeması ve Ürünler şeması'na bakın.
Bu sayfada
ShopifyQL'e genel bakış
Mağazanızın verileri, tanımlanmış sütunlar ve satırlar halinde yapılandırılmış veritabanı tablolarında saklanır. Sütunlar, içerdikleri bilgi türünü (ör. satışlar) tanımlar, satırlar ise veri türünün gerçek değerini (ör. satışlarda 2.450 USD) belirtir.
Verilerinizin anlamlı bir biçimde alınabilmesi için veritabanına bir sorgu gönderilmesi gerekir. Sorgu, yanıt olarak belirli verileri talep eden bir sorudur. ShopifyQL gibi bir sorgu dili, bu soruyu oluşturmanın standart yoludur. Sorgu, anahtar sözcükler ve bunlarla ilişkili parametrelerden oluşturulur. Birkaç anahtar sözcüğün belirli parametrelerle birleşimi sorgunuzu oluşturur. Oluşturduktan sonra sorgunuzu çalıştırabilir ve yanıt alabilirsiniz.
Bu, sorgu olarak yazılmış bir ShopifyQL sözdizimi örneğidir. Anahtar sözcükler kalın olarak yazılmıştır ve ilişkili parametreleri parantez içindedir. Burada gösterilen parametreler yer tutuculardır:
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. |
Anahtar sözcük referans tablosu
Bunlar, sorgunuzu yazmak için kullanabileceğiniz anahtar sözcüklerdir:
Anahtar sözcük | İşlevsel kullanım |
---|---|
FROM | Hangi veri kümesi tablosundan veri seçileceğini belirtir. |
SHOW | Veri kümesi tablosundan çıkarmak istediğiniz sütunları seçer. |
VISUALIZE | Verilerinizi bir çizgi de veya çubuk grafikte görüntüler. |
GRUPLANDIRMA ÖLÇÜTÜ | Ayıklanan verileri boyut veya zaman boyutlarına göre gruplandırır. |
WHERE | Satırların seçilebilmesi için karşılaması gereken koşul veya koşulları tanımlar. |
SINCE | Geçmişteki belirli bir zamandan beri olan verileri gösterir. |
UNTIL | Geçmişteki belirli bir zamana kadar olan verileri gösterir. |
DURING | Geçmişteki belirli bir zamandan beri olan verileri gösterir. |
COMPARE TO | Geçmişteki belirli bir zamana kadar olan 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. |
AS | Sütunu, seçtiğiniz bir adla yeniden adlandırır. |
ShopifyQL sorguları yazma
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.
ShopifyQL temel bilgileri: FROM ve SHOW
En basit ShopifyQL sorgusunu oluşturmak için yalnızca iki anahtar kelime gerekir: sırasıyla FROM ve SHOW. Tablo adı parametresinden önce gelen FROM, hangi tablonun sorgusunu yapmak istediğinizi belirtir. Sütun adı parametresinden önce gelen SHOW ise seçmek istediğiniz sütunları belirtir.
Örneğin, şu sorguyu yazarak tüm ürün kimliklerini ve bunlarla ilişkili başlıkları satış tablosundan listeleyebilirsiniz:
Verileri gruplandırma: GROUP BY
Bir metriği boyuta göre segmentlere ayırmak (ör. bölgeye göre satışları gruplandırma) istiyorsanız GRUPLANDIRMA ÖLÇÜTÜ anahtar sözcüğünü kullanın. GRUPLANDIRMA ÖLÇÜTÜ anahtar sözcüğü herhangi bir boyut parametresiyle eşleştirilebilir.
Örneğin, fatura ülkesine ve bölgesine göre toplam kargo ücretlerini gruplandıran bir sorgu şu şekilde yazılır:
Aya göre net satışları göstermek 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 bir sorgu istiyorsanız ALL değiştiricisini kullanın:
ALL değiştiricisini kullanırken SINCE (başlangıç) ve UNTIL (bitiş) tarihlerini de belirtmeniz gerekir. ALL değiştiricisinin yalnızca zaman boyutuyla çalıştığını unutmayın.
Zaman Boyutları
Bunlar, verilerinizi gruplandırmak için kullanabileceğiniz zaman boyutlarıdır:
Operatör | İşlevsel kullanım |
---|---|
saat | Takvim günü saatlere göre gruplama. |
gün | Takvim gününe göre gruplandırma. |
week | Takvim haftasına göre gruplandırma. |
ay | Takvim ayına göre gruplandırma. |
çeyrek | 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. |
Verileri Filtreleme: WHERE
WHERE anahtar sözcüğü, ShopifyQL sorgusunun tüme boyutsal filtre uygulamanıza olanak tanır.
Örneğin, net satışları yalnızca belirli bir bölge için aya göre gruplandırılmış şekilde almak istiyorsanız sorgunuz şu şekildedir:
Yukarıdaki örnekte de gördüğünüz gibi SHOW veya GROUP BY anahtar sözcüklerinde WHERE parametresi bulunmasa bile sonuç kümesini WHERE parametresiyle filtreleyebilirsiniz. Bu örnekte, billing_region sonuç kümesine dahil edilmemiş olsa bile net satışlar, fatura adresleri yalnızca Ohio'da bulunan siparişler için tüm aylarda filtrelenir.
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 filtre uyguladığını belirtmek için '=' operatörü kullanıldı ancak kullanabileceğiniz başka operatörler de vardır:
Karşılaştırma operatörü | İşlevsel kullanım |
---|---|
= | ş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 | İşlevsel kullanım |
---|---|
AND | AND ile ayrılan koşulların karşılandığı tüm satırları göstermek için filtreleyin. |
OR | OR ile ayrılan koşullardan herhangi birinin karşılandığı tüm satırları göstermek 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 Ohio'da bulunan, indirim uygulanmış 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:
Tarih aralıkları: SINCE ve UNTIL
Sorgunuzu 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 filtrelediğinden bu anahtar kelimeler benzersizdir.
Örneğin, bugünden başlayarak 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 tarih aralığı operatörleri şunlardır:
Tarih aralığı operatörü | İşlevsel kullanım |
---|---|
-{#}d | Gün sorgusunun çalıştırıldığı tarihten önceki gün sayısı. |
-{#}w | Gün sorgusunun çalıştırıldığı tarihten önceki hafta sayısı. |
-{#}m | Gün sorgusunun çalıştırıldığı tarihten önceki ay sayısı. |
-{#}q | Gün sorgusunun çalıştırıldığı tarihten önceki çeyrek sayısı. |
-{#}y | Gün sorgusunun çalıştırıldığı tarihten önceki yıl sayısı. |
yyyy-mm-dd | Belirli bir tarih. |
bugün | Sorgunun çalıştırıldığı tarih. |
dün | Sorgunun çalıştırıldığı tarihten önceki 24 saatlik dönem. |
Tarih Aralıklarında Filtreleme: DURING
DURING anahtar sözcüğü, tarih aralıkları için tarihe göre filtrelemeyi basitleştirir. Takvim yılı veya belirli bir ay gibi bilinen bir zaman aralığı veya 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:
DURING, aşağıdaki adlandırılmış tarih aralığı operatörlerini kabul eder:
Tarih aralığı operatörü | İşlevsel kullanım |
---|---|
bugün | Sorgunun çalıştırıldığı tarih. |
dün | 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ı. |
bfcm2022 | 25 Kasım - 28 Kasım 2022 tarihleri arası. |
bfcm2021 | 26 Kasım - 29 Kasım 2022. |
Tarih aralıkları arasında karşılaştırma yapma: COMPARE TO
COMPARE TO anahtar sözcüğü, DURING tarih aralığındaki verileri, COMPARE TO tarih aralığındaki verilerle karşılaştırmanıza olanak sağlar. DURING bölümünde listelenen adlandırılmış tarih aralığı operatörlerinin herhangi birini kabul eder. COMPARE TO tarafından kullanılan operatör, DURING tarafından kullanılan operatör ile aynı uzunlukta olmalıdır. Örneğin, DURING this_week COMPARE TO last_week
bir kombinasyondur, ancak DURING this_week COMPARE TO last_month
kombinasyon değildir.
Aşağıdaki örnek, 2022'deki Black Friday Cyber Monday net satışlarını, 2021'deki Black Friday Cyber Monday ile karşılaştırır.
Verileri Sıralama: 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 her fatura ülkesi ve bölgesinin, fatura ülkesine göre ve ardından her ülkedeki fatura bölgesine göre alfabetik olarak sondan başa sıralanmış net satışlarını döndürü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.
Limit
LIMIT anahtar sözcüğü, sorgunun kaç satır döndüreceğini belirtmenize olanak tanır. Bu özellik, her sütundaki verilerin görünümünü anlamak istediğinizde kullanışlıdır. Alternatif olarak, LIMIT anahtar sözcüğünü üst ve alt listeler oluşturmak için ORDER BY ile birleştirebilirsiniz.
Son 3 ay içinde en çok satılan ilk 10 ürün listesini adede göre oluşturmak için LIMIT ve ORDER BY anahtar sözcüklerinin kullanıldığı örnek şu şekildedir:
Sorgularınızın grafiğini oluşturma: VISUALIZE ve TYPE
VISUALIZE anahtar sözcüğü, verileri bir çizgi veya çubuk grafikte görüntüleyen bir ShopifyQL sorgusu yazmanıza olanak tanır.
TYPE anahtar sözcüğü isteğe bağlıdır ve sorgunuzun sırasıyla çizgi grafik veya çubuk grafikte bir görselleştirme döndürmesi için "çizgi" veya "çubuk" ile birlikte kullanılmalıdır. TYPE sorgunuza dahil değilse ShopifyQL, sorgunuza en uygun görselleştirmeye otomatik olarak karar verir. Sorgunuz yazılı olarak görselleştirilemezse ShopifyQL tablo verilerini döndürür.
Ö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:
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 | İşlevsel kullanım |
---|---|
+ | İ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.
İşlevler
ShopifyQL işlevleri, Microsoft Excel'deki pivot tablolara benzer sütunları toplamanıza olanak tanır. Sütunları toplamak, onları yeni bir değer oluşturmak için birleştirmek anlamına gelir. Aşağıdaki işlevler ShopifyQL'nin geçerli sürümünde kullanılabilir:
İşlev operatörü | İşlevsel kullanım |
---|---|
count() | Sonuç kümesindeki örneklerin sayısı. |
sum() | Sonuç kümesindeki değerlerin toplamı. |
min() | Sonuç kümesindeki minimum değer. |
max() | Sonuç kümesindeki maksimum değer. |
avg() | Sonuç kümesindeki ortalama değer. |
sum
, min
, max
ve avg
işlevleri yalnızca sayısal değerlerle kullanılabilirken count
işlevi boyutsal özelliklerin farklı örneklerini saymak için kullanılabilir. Toplanan alanları işlevlerde bağımsız değişken olarak kullanamazsınız. Toplanan alanlar _sum
, _count
veya _percent
şeklinde sonlanır.
Örneğin, total_sales zaten toplandığından aşağıdaki sorgu bir hata döndürür:
Toplanan alanları toplama işlevleriyle birleştiren geçerli bir sorgu örneği şu şekildedir:
Bu sorgu, sum
işlevinin bir sonucu olarak ortalama sipariş değeri toplamını ve brüt satışlar toplamını döndürür. Bu metrikler, 2021'de verilen tüm siparişlerin fatura bölgesine göre ayrılmıştır.
Yorumlar
Yorumları, ShopifyQL ifadelerinin bölümlerini açıklamak veya bir ShopifyQL ifadesinin yürütülmesini önlemek için kullanabilirsiniz. Bir yorumun içindeki metinler, kod yürütülürken dikkate alınmaz.
Tek satırlı yorumlar, --
ile başlar ve satırın sonunda biter.
Çok satırlı yorumlar /*
ile başlar ve */
ile biter.