Google bigquery BigQuery:在命名列中使用IEEE_DIVIDE返回无法识别的名称?
我试图在BQ中使用IEEE_DIVIDE函数来避免由零错误进行div,并在新列中返回除法。分子为新用户计数,分母为用户计数。Num和Den都是计算计数 我得到以下错误: 无法识别的名称:新用户计数为[9:14]Google bigquery BigQuery:在命名列中使用IEEE_DIVIDE返回无法识别的名称?,google-bigquery,Google Bigquery,我试图在BQ中使用IEEE_DIVIDE函数来避免由零错误进行div,并在新列中返回除法。分子为新用户计数,分母为用户计数。Num和Den都是计算计数 我得到以下错误: 无法识别的名称:新用户计数为[9:14] SELECT event_date, COUNT(DISTINCT IF( DATE(TIMESTAMP_MICROS(event_timestamp)) = DATE(TIMESTAMP_MICROS(user_first_touch_timestamp)), user_pseud
SELECT
event_date,
COUNT(DISTINCT IF(
DATE(TIMESTAMP_MICROS(event_timestamp)) =
DATE(TIMESTAMP_MICROS(user_first_touch_timestamp)),
user_pseudo_id,
NULL
)) AS new_user_counts,
COUNT(DISTINCT(user_pseudo_id)) AS user_counts,
IEEE_DIVIDE(new_user_counts, user_counts) AS percentage_new_users
FROM `google-analytics-tables.*`
GROUP BY event_date
ORDER BY event_date ASC
有人能帮忙吗。谢谢。您应该使用下面的
SELECT
event_date,
new_user_counts,
user_counts,
IEEE_DIVIDE(new_user_counts, user_counts) AS percentage_new_users
FROM (
SELECT
event_date,
COUNT(DISTINCT IF(
DATE(TIMESTAMP_MICROS(event_timestamp)) =
DATE(TIMESTAMP_MICROS(user_first_touch_timestamp)),
user_pseudo_id,
NULL
)) AS new_user_counts,
COUNT(DISTINCT(user_pseudo_id)) AS user_counts,
FROM `google-analytics-tables.*`
GROUP BY event_date
ORDER BY event_date ASC
)
你应该在下面使用
SELECT
event_date,
new_user_counts,
user_counts,
IEEE_DIVIDE(new_user_counts, user_counts) AS percentage_new_users
FROM (
SELECT
event_date,
COUNT(DISTINCT IF(
DATE(TIMESTAMP_MICROS(event_timestamp)) =
DATE(TIMESTAMP_MICROS(user_first_touch_timestamp)),
user_pseudo_id,
NULL
)) AS new_user_counts,
COUNT(DISTINCT(user_pseudo_id)) AS user_counts,
FROM `google-analytics-tables.*`
GROUP BY event_date
ORDER BY event_date ASC
)
不能使用同一选择中刚声明的别名列,需要使用子选择或重复聚合不能使用同一选择中刚声明的别名列,需要使用子选择或重复聚合