【发布时间】:2020-06-25 16:26:34
【问题描述】:
我正在尝试对列中的数据进行“规范化”,使其介于 0 和 1 之间。我最初的计划是找到该列的 MAX 值并执行以下计算: 列/MAX(列)。我遇到的问题是输出看起来像这样
就这样……
显然,我的查询似乎正在提取该特定行的最大值,因为它只有一个值,与所述值匹配,并且规范化数据始终为一。
这是我用来查找综合浏览量的查询(数据来自 GA,架构与默认值相同):
SELECT
pageTitle,
COUNT(*) AS pageviews
FROM (
SELECT
hits.page.pageTitle,
hits.type,
FROM
`medicine-matter.131114627.ga_sessions_*` AS GA,
UNNEST(GA.hits) AS hits
WHERE
type = 'PAGE'
)
GROUP BY
pageTitle
ORDER BY
pageviewDESC
然后我像这样调用另一个表中的综合浏览量:
SELECT
pageviews,
MAX(pageviews) as MAX,
pageviews/ MAX(pageviews) as normal_pageview
FROM
`table`
WHERE
pageviews > 1
group by
pageTitle,
pageviews
ORDER BY
normal_pageview DESC
我对 SQL 很陌生,所以如果我做了一些绝对愚蠢的事情,我只能道歉。
【问题讨论】:
标签: sql google-analytics google-bigquery normalization