Hej Wf!
Jag håller på bygga ett litet script för mina produkter där jag är i behov av lagra statistik. Det hela kan ses som ett mindre "affiliatenätverk".
Så här är det uppbyggt:
affID = affiliatens ID-nummer
campID = Kampanjens ID-nummer
Varje gång man klickar på en affliate-länk ska klicket loggas. Samt om det blir ett köp så ska även det loggas.
Det svåra som jag ser det är att kunna föra statistik på detta. Jag vill att Affliaten ska kunna gå in och se daglig statistik för valfria dagar, veckor, månad osv. Samt enskild kampanjstatistik.
Just nu har jag skapat en tabell där jag lagrar alla klick för sig och en egen för alla köp. I dessa tabeller lagrar jag tidpunkt, affID och campID.
När jag sedan listar statistiken för affID = 1 så listar den ju samtliga klick och köp på en rad. Jag vill ju att detta ska räknas ihop snyggt i en lista där varje kampanj listas och visar totala antal klick och köp. Samt att man lätt ska kunna sortera denna lista.
Hur ska jag bygga upp det hela? hur har ni gjort?
Tacksam för alla tankar och idéer, för jag har verkligen kört fast.
Tack på förhand!
adde2Medlem sedan maj 2000144 inlägg så här?
Så här?
Funkar i MS Sqlserver 2008.
du får lägga på foreign keys och sånt själv...
du har även möjlighet att dra ut rapporter på ett specifikt datum
create table kampanj(
kampanjid int identity,
affid int
)
create table kop(
kopid int identity,
kampanjid int,
klockslag datetime
)
create table klick(
klickid int identity,
kampanjid int,
klockslag datetime
)
insert into kampanj values (1)
insert into kampanj values (2)
insert into kop values(1, '2010-12-31')
insert into kop values(1, '2010-12-31')
insert into kop values(1, '2011-01-01')
insert into kop values(1, '2011-01-01')
insert into kop values(1, '2011-01-01')
insert into kop values(2, '2011-01-01')
insert into kop values(2, '2011-01-01')
insert into kop values(2, '2011-01-01')
insert into klick values(1, '2010-12-31')
insert into klick values(1, '2010-12-31')
insert into klick values(1, '2011-01-01')
insert into klick values(1, '2011-01-02')
insert into klick values(1, '2011-01-02')
insert into klick values(2, '2010-12-30')
insert into klick values(2, '2010-12-30')
insert into klick values(2, '2011-01-01')
insert into klick values(2, '2011-01-02')
insert into klick values(2, '2011-01-02')
select k.affid, k.kampanjid, ko.antal as 'Antal köp', kl.antal as 'Antal klick'
from kampanj k
outer apply(select COUNT(*) as antal from kop ko where ko.kampanjid = k.kampanjid) ko
outer apply(select COUNT(*) as antal from klick kl where kl.kampanjid = k.kampanjid) kl