Update Source Ads
Update Source Ads (meta_ads terhadap existing data)
WITH sleekflow_inbound AS (
SELECT
s.uid AS sleekflow_uid,
DATE(s.created_at) AS sleekflow_date,
s.source AS sleekflow_source,
s.sremarks AS sleekflow_sremarks,
s.medium AS sleekflow_medium,
s.mremarks AS sleekflow_mremarks,
l.uid AS leads_uid,
DATE(l.timestamp) AS leads_date,
DATE(l.convert_date) AS leads_convert_date,
l.source AS leads_source
FROM
public.sleekflow s
JOIN
public.leads l
ON
s.uid = l.uid -- Menyesuaikan kolom untuk join berdasarkan UID atau identifier lainnya
),
updates AS (
SELECT
sleekflow_uid,
sleekflow_date,
sleekflow_source,
sleekflow_sremarks,
sleekflow_medium,
sleekflow_mremarks
FROM
sleekflow_inbound
)
SELECT
leads.uid AS leads_uid,
DATE(leads."timestamp") AS current_leads_timestamp,
u.sleekflow_date AS new_sleekflow_date,
leads.source AS current_source,
u.sleekflow_source AS new_source,
leads.sremarks AS current_sremarks,
u.sleekflow_sremarks AS new_sremarks,
leads.medium AS current_medium,
u.sleekflow_medium AS new_medium,
leads.mremarks AS current_mremarks,
u.sleekflow_mremarks AS new_mremarks
FROM
updates u
JOIN
public.leads leads
ON
leads.uid = u.sleekflow_uid
WHERE
leads."timestamp" IS NOT NULL
AND u.sleekflow_date::date <= leads."timestamp"::date AND leads.source = 'web';
WITH sleekflow_inbound AS (
SELECT
s.uid AS sleekflow_uid,
DATE(s.created_at) AS sleekflow_date,
s.source AS sleekflow_source,
s.sremarks AS sleekflow_sremarks,
s.medium AS sleekflow_medium,
s.mremarks AS sleekflow_mremarks,
l.uid AS leads_uid,
DATE(l.timestamp) AS leads_date,
DATE(l.convert_date) AS leads_convert_date,
l.source AS leads_source
FROM
public.sleekflow s
JOIN
public.leads l
ON
s.uid = l.uid -- Menyesuaikan kolom untuk join berdasarkan UID atau identifier lainnya
),
updates AS (
SELECT
sleekflow_uid,
sleekflow_date,
sleekflow_source,
sleekflow_sremarks,
sleekflow_medium,
sleekflow_mremarks
FROM
sleekflow_inbound
)
UPDATE public.leads
SET
"timestamp" = u.sleekflow_date,
source = u.sleekflow_source,
sremarks = u.sleekflow_sremarks,
medium = u.sleekflow_medium,
mremarks = u.sleekflow_mremarks
FROM
updates u
WHERE
leads.uid = u.sleekflow_uid AND leads."timestamp" IS NOT NULL
AND u.sleekflow_date::date <= leads."timestamp"::date AND leads.source = 'social_media' AND u.sleekflow_source ='meta_ads';
Fix Manual source = 'meta_ads'
update public.sleekflow
set
source = 'meta_ads',
sremarks = ad_source_id,
medium = 'sleekflow',
mremarks = 'wa'
where ad_source_id is not null AND source = 'social_media'
Query ini adalah perintah SQL UPDATE yang digunakan untuk memperbarui nilai dalam tabel public.sleekflow
. Berikut adalah penjelasan dari setiap bagiannya:
1. update public.sleekflow
Ini adalah perintah untuk memperbarui tabel
sleekflow
yang berada di dalam schemapublic
.
2. set
Menentukan kolom mana yang akan diperbarui dan nilai baru yang akan diberikan.
source = 'meta_ads'
Kolom
source
akan diisi dengan nilai'meta_ads'
.
sremarks = ad_source_id
Kolom
sremarks
akan diisi dengan nilai dari kolomad_source_id
.
medium = 'sleekflow'
Kolom
medium
akan diisi dengan nilai'sleekflow'
.
mremarks = 'wa'
Kolom
mremarks
akan diisi dengan nilai'wa'
.
3. where ad_source_id is not null
Hanya baris yang memiliki ad_source_id yang tidak bernilai NULL yang akan diperbarui.
Kesimpulan:
Query ini akan memperbarui data di tabel public.sleekflow
dengan aturan berikut:
Jika
ad_source_id
tidak NULL, maka:source
diubah menjadi'meta_ads'
sremarks
diisi dengan nilaiad_source_id
medium
diubah menjadi'sleekflow'
mremarks
diubah menjadi'wa'
Semua baris yang tidak memenuhi kondisi ad_source_id IS NOT NULL
tidak akan terpengaruh oleh query ini.
Last updated