1
我似乎無法得到此查詢以給我正確的結果。查詢以獲得展示次數和相關點擊次數
select
datepart(day, i.timestamp) as [day],
i.campaignID, i.creativeID
, count(distinct i.sessionID) as [Impressions]
, count(case when e.eventID in (1,2,3) then 1 else 0 end) as Clicks
from impressions i
left join Events e
on i.sessionID = e.sessionID
group by
datepart(day, i.timestamp)
, i.campaignID, i.creative
order by [day]
我也嘗試在then子句中用e.eventid替換1。我在結果中獲得太多點擊。事件每個sessionid有多個記錄,因爲許多類型的事件可能發生在同一個會話中(滾動,展開等),我希望計算的事件將有一個1,2或3的偶數,因爲這些將是3可能的鏈接,你可以點擊。我在尋找的是通過計算展示次數和相關點擊來計算點擊率,如果沒有點擊,我希望它反映爲0,而不是從結果中丟失,這就是即時獲得的結果。
任何幫助表示感謝,提前感謝您寶貴的時間!
看起來更有可能,謝謝!你能否解釋爲什麼sum(1)與count(1)有不同的結果? –
當然。 'count'包含0/1系列的每個元素,無論是0還是1('count {0,1,1,1,0,0,1}'= 7)。 'sum'只加1,而0不作區分('sum {0,1,1,1,0,0,1}'= 0 + 1 + 1 + 1 + 0 + 0 + 1 = 4)。但是所有這些都適用於集合。 sum(1)與count(1)沒有差別,因爲第一個合計爲1,第二個合計爲1個元素。 – geomagas
gotcha謝謝,即時通訊驚訝計數包括零 - 案例結構暗示,如果沒有......它只會包括一個零......啊,好吧,它只是對我明白了。 * facepalms * - whutta idjut:P –