我在以下方面遇到麻烦:
我正在尝试使用Google Bigquery将引荐来源网址检索到我的网站。我正在查看从2018年1月1日到2018年10月31日每个域每月提供的访问量。但是,我只希望能够看到引荐来源实际每月发送流量(因此,如果某个域在1月发送了流量但不是2月,我想完全忽略它们)。
有没有简单的方法可以做到这一点?
查询当前如下所示:
const ctx = document.getElementById('myChart').getContext('2d');
new Chart(ctx, {
type: 'doughnut',
data: {
labels: ['Company 1', 'Company 2', 'Company 3', 'Company 4'],
datasets: [
{
label: 'My First Dataset',
data: [6900, 3450, 2300, 1800],
borderWidth: 0,
backgroundColor: [
'#7976FF',
'#FFB546',
'#FE6779',
'#F4F5F7'
]
}
]
},
options: {
legend: false,
}
});
我一直在研究使用UNNEST和数组公式,但是我并不完全了解如何使用它们。
预先感谢
答案 0 :(得分:2)
下面是用于BigQuery标准SQL(快速环绕原始查询)
#standardSQL
SELECT DATE, referrer, VISITS
FROM (
SELECT DATE, referrer, VISITS, COUNT(1) OVER(PARTITION BY referrer) total_months
FROM (
SELECT
FORMAT_DATE("%Y-%m", DATE(TIMESTAMP(date_time))) AS DATE,
NET.REG_DOMAIN(referrer) AS referrer,
COUNT(1) AS VISITS
FROM `MY.TABLE`
WHERE DATE(TIMESTAMP(date_time)) BETWEEN '2018-01-01' AND '2018-10-31'
-- AND [my appropriate segmentation]
GROUP BY DATE, referrer
)
)
WHERE total_months = 10
ORDER BY referrer, DATE