salam brother
saya ada mau tanya tentang sql
table1 : member_id dan visitor
table 2: member_id dan datetransaksi
kondisinya:
jika ada data yang masuk di table 2, maka jumlah visitor dalam table1 akan bertambah 1.
misal di table 2 ada transaksi
member_id datetransaksi
02100000 070714
02100000 070714
02100000 080714
jadi pada table 1 jumlah visitor nya ada 2
mohon dibantu pencetrahannya
thanks
Ask rumus SQL
Main Content
Ask rumus SQL
ya tinggal bikin insert trigger di table2.
dgn asumsi ada master table member terpisah (bukan table1 master table untuk member) maka :
- jika memberid yg diinsert sudah ada di table1, increment visitornya
- jika belum ada, insert ke table1 dgn visitor=1
mau dihandle dari sisi aplikasi juga sama aja logicnya
dgn asumsi ada master table member terpisah (bukan table1 master table untuk member) maka :
- jika memberid yg diinsert sudah ada di table1, increment visitornya
- jika belum ada, insert ke table1 dgn visitor=1
mau dihandle dari sisi aplikasi juga sama aja logicnya
Quote:
yang saya buat seperti ini
CREATE TRIGGER visit after INSERT ON TB_SALETRX
FOR EACH ROW BEGIN
UPDATE TB_CRM
SET visit = visit + 1
WHERE
MEMBER_ID = NEW.MEMBER_ID and ;
END$$
misal yang di
memberid trxdate
02100000 070714
02100000 070714
na yang saya bingung di date nya. bagaimana di datenya supaya bisa terhitung 1 x bukan 2 x.
soory brother, masih belajar.
thanks
KASKUS Ads - Create Your Ads / Buat Iklan
Quote:
eh, gimana maksudnya?
bukannya bener jika ada 2 record dgn memberid 02100000 di TB_SALETRX (walau tanggalnya sama) maka nilai visit di tabel TB_CRM bakal jadi 2?
atau pengennya di TB_SALETRX itu ga boleh ada record dgn memberid dan tanggal yang sama gitu?
kalau iya ya jadiin aja dua kolom itu sebagai primary key, beres

Quote:
pingin nya jika ada 2 record atau lebih dgn memberid 02100000 di TB_SALETRX (walau tanggalnya sama) maka nilai visit di tabel TB_CRM bakal jadi 1 bukan 2
Quote:
jadi nilai visit di tabel TB_CRM itu pasti 1 ya karena jika ada memberid tersebut di TB_SALETRX biarpun 1,2, atau 100 sekalipun nilai visitnya bakal tetep 1?
ya nggak usah diincrement brarti haha, jadiin aja
UPDATE TB_CRM
SET visit = 1
WHERE
MEMBER_ID = NEW.MEMBER_ID
bener gitu nggak sih yg dimau? asli nggak ngerti kolom visit ini gunanya apaan
Quote:
Visit guna nya untuk menghitung jumlah berpa kali dia transaksi .
DATA AWAL
di tb _crm
member_id=021000000
visit=10
tb_saletrx
jika ada transaksi disitu dihari tanggal yang sama misal
member_id trxdate
021000000 07/07/14
021000000 07/07/14
021000000 07/07/14
na di situ jumlah visit di tb_crm akan menjadi 11 bukan 13
terus di hari berikutnya katakan dia bertransaksi :
member_id trxdate
021000000 08/07/14
021000000 08/07/14
021000000 09/07/14
021000000 10/07/14
jumlah visit di tb crm akan menjadi 14 dari yang semula terakhir update 11.
sorry gan kl udah bikin suhu bingung

Quote:
ooo, ya brarti SEBELUM insert, cek dulu apakah ada record dengan idmember dan tanggal segitu apa nggak. jika belum ada maka increment visitnya, jika sudah ada nggak usah diincrement

Quote:
jika sudah ada dan kl tdak di increment, gimana visit nya bisa nambah ya gan ?
Quote:
ya kan emang pengennya nggak nambah.
misal
DATA AWAL
di tb _crm
member_id=021000000
visit=1
dan
member_id trxdate
021000000 07/07/14
ketika dia insert 021000000 08/07/15 dicek belum ada 021000000 di tanggal
08/07/15, maka visit diincrement jadi 2
lalu insert lagi
021000000 08/07/15, dicek sudah ada member id 021000000 untuk tanggal 08/07/15 maka tidak diincrement. nilai visit tetep 2
bukankah begitu yang dimau TS?
Quote:
ya betul gan, itu yang aku mau heheheh.....
tapi bisa minta petunjuk untuk increment nya gan , maksudnya saya harus set increment nya dimana ?
kalau yang saya tangkap, increment nya di visit ? check auto increment
apa bener begitu ?
Quote:
jadi simpel nya harus dipisahkan gan antara 02100000 dengan 070714 dalam database nya kalau udah pisah baru bisa terdeteksi kalau count nya ada 2
Quote:
hmmm masih belum ngerti ya? langsung gini aja deh
update TB_CRM set visit=(select count(*) from (select distinct kode from TB_SALETRX where TB_SALETRX.member_id=TB_CRM.membe_rid) foo)