0Pricing
Digital Marketing Academy · Ders

Pazarlama Tablolarını Birleştirme

Oturumlar, kullanıcılar ve siparişler.

Pazarlama Tablolarını Birleştirme, CoddyKit'te ücretsiz bir Digital Marketing Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Digital Marketing Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Digital Marketing Academy kursu toplamda 4 dersten oluşur.

Neden JOIN?

Gerçek sorular birden çok tabloyu kapsar. Harcama kampanyalarda, gelir siparişlerde, özellikler kullanıcılarda bulunur. Segmente göre ROAS veya LTV hesaplamak için bunları birleştirmeniz gerekir.

JOIN'ler, user_id veya campaign_id gibi ortak bir anahtar üzerinden iki tablodaki satırları eşleştirir.

SELECT o.order_id, u.country
FROM orders o
JOIN users u ON o.user_id = u.user_id;

INNER JOIN

INNER JOIN yalnızca her iki tabloda da eşleşen satırları döndürür. Eşleşen kullanıcısı olmayan siparişler veya siparişi olmayan kullanıcılar sonuçtan çıkarılır.

Bunu, satın alanlar gibi yalnızca her iki tarafta da bulunan kayıtlarla ilgilendiğinizde kullanın.

SELECT u.user_id, u.country, SUM(o.revenue) AS revenue
FROM users u
JOIN orders o ON o.user_id = u.user_id
GROUP BY u.user_id, u.country;

LEFT JOIN

LEFT JOIN, sağ tarafta eşleşme olmasa bile sol tablodaki her satırı korur. Eksik değerler NULL olarak döner.

Hiç sipariş vermemiş kullanıcıları veya hiç dönüşüm gerçekleştirmemiş oturumları bu şekilde bulabilirsiniz.

SELECT u.user_id, COALESCE(SUM(o.revenue), 0) AS revenue
FROM users u
LEFT JOIN orders o ON o.user_id = u.user_id
GROUP BY u.user_id;

Boşlukları Bulma

Eşleşmeyen kayıtları ayırmak için bir LEFT JOIN'i NULL kontrolüyle birlikte kullanın. "Hangi kayıtlar hiç satın alma yapmadı?" klasik bir elde tutma sorusudur.

Sağ tarafın NULL olması, eşleşen bir sipariş bulunmadığı anlamına gelir.

SELECT u.user_id, u.signup_date
FROM users u
LEFT JOIN orders o ON o.user_id = u.user_id
WHERE o.order_id IS NULL;

Oturumları Siparişlerle Birleştirme

Oturumları siparişlerle ilişkilendirmek, davranışı sonuçla bağlar. Hangi trafiğin sonunda satın alma yaptığını görmek için user_id üzerinden eşleştirin.

Bu, kanal ilişkilendirme analizinin temelidir.

SELECT s.channel, SUM(o.revenue) AS revenue
FROM sessions s
JOIN orders o ON o.user_id = s.user_id
GROUP BY s.channel;

ROAS Hesaplama

Gerçek ROAS için harcama ve gelirin yan yana bulunması gerekir. Kampanyaları campaign_id üzerinden siparişlerle birleştirin, ardından toplamları bölün.

NULLIF, sıfır harcamaya bölme hatasına karşı koruma sağlar.

SELECT c.campaign_id,
       SUM(o.revenue) / NULLIF(SUM(c.spend), 0) AS roas
FROM campaigns c
LEFT JOIN orders o ON o.campaign_id = c.campaign_id
GROUP BY c.campaign_id;

Tablo Takma Adları

Takma adlar (siparişler için o, kullanıcılar için u), çok tablolu sorguları kısa ve anlaşılır tutar. Bir ad her iki tabloda da bulunduğunda sütunları her zaman tablo adıyla belirtin.

Açık takma adlar, karmaşık JOIN'leri okumayı ve hata ayıklamayı çok kolaylaştırır.

SELECT c.name AS campaign, SUM(o.revenue) AS revenue
FROM campaigns c
JOIN orders o ON o.campaign_id = c.campaign_id
GROUP BY c.name;

Üç Tabloyu Birleştirme

İkiden fazla tabloyu bir araya getirmek için JOIN'leri zincirleyin. Burada geliri ülkeye göre segmentlere ayırmak üzere kampanyaları siparişlere, siparişleri de kullanıcılara bağlıyoruz.

Her JOIN, yeni tabloyu mevcut kümeye bağlayan başka bir ON koşulu ekler.

SELECT c.name, u.country, SUM(o.revenue) AS revenue
FROM campaigns c
JOIN orders o ON o.campaign_id = c.campaign_id
JOIN users u ON u.user_id = o.user_id
GROUP BY c.name, u.country;

Ayrıntı Düzeyine Dikkat Edin

Bire çok ilişkiyi birleştirmek satırları çoğaltabilir ve toplamları şişirebilir. Bir kampanyanın çok sayıda siparişi varsa harcamayı sipariş başına toplamak, harcamayı iki kez sayar.

Sayıları doğru tutmak için her tarafı ayrı ayrı toplayın, ardından toplamları birleştirin.

SELECT c.campaign_id, c.total_spend, r.revenue
FROM campaigns c
JOIN (
  SELECT campaign_id, SUM(revenue) AS revenue
  FROM orders GROUP BY campaign_id
) r ON r.campaign_id = c.campaign_id;

İlk Temas İlişkilendirmesi

Bir kullanıcının geldiği ilk kanala pay atfetmek için her kullanıcının en erken oturumunu bulun, ardından bunu siparişleriyle birleştirin.

Bir alt sorgu, gelir birleştirmesinden önce ilk teması ayırır.

SELECT f.channel, SUM(o.revenue) AS revenue
FROM (
  SELECT DISTINCT ON (user_id) user_id, channel
  FROM sessions ORDER BY user_id, session_date
) f
JOIN orders o ON o.user_id = f.user_id
GROUP BY f.channel;

Uygulamada JOIN'ler

JOIN'ler, pazarlama SQL'ini güçlü kılan noktadır. Harcama artı gelir ROAS'ı; oturumlar artı siparişler ilişkilendirmeyi; kullanıcılar artı siparişler ise segmente göre LTV'yi verir.

Her iki tarafın da mevcut olması gerekiyorsa INNER'ı, boşlukları korumak ve incelemek istiyorsanız LEFT'i seçin.

Hızlı Kontrol

Hiç sipariş vermemiş olanlar da dahil olmak üzere kayıt olmuş her kullanıcıyı listelemek istiyorsunuz. Hangi birleştirmeyi kullanırsınız?

Özet

INNER JOIN her iki taraftaki eşleşmeleri korur; LEFT JOIN tüm sol satırları korur ve boşlukları ortaya çıkarır. Takma adlar ve tablo adıyla açıkça belirtilmiş sütunlar sorguları düzenli tutar.

Bire çok JOIN'lerde satır çoğalması tuzağına dikkat edin; toplamları doğru tutmak için önceden toplama yapın. Sırada: kohort ve huni sorguları.

Sıkça Sorulan Sorular

“Pazarlama Tablolarını Birleştirme” dersi ücretsiz mi?

Evet — “Pazarlama Tablolarını Birleştirme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Digital Marketing Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Digital Marketing Academy kursu toplamda 4 dersten oluşur.

“Pazarlama Tablolarını Birleştirme” dersinde ne öğreneceğim?

Oturumlar, kullanıcılar ve siparişler. Digital Marketing Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Digital Marketing Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Digital Marketing Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Pazarlama Tablolarını Birleştirme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Digital Marketing Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Digital Marketing Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Pazarlamacılar Neden SQL Öğrenir
  2. SELECT, WHERE, GROUP BY
  3. Pazarlama Tablolarını Birleştirme
  4. Kohort ve Huni Sorguları
← Digital Marketing Academy Sayfasına Dön