BigQuery语法错误“(”

时间:2018-06-18 17:00:54

标签: sql google-bigquery

问题

我正在创建一个查询,以统一分配每个广告ID的Facebook广告支出金额。

语法阻止了我。

SELECT 
t.lead_city, 
t.lead_time,
t.facebook_ad_id,
t.facebook_leadads_id,
t.id_promo,
t.value,
(d.spent / CAST((SELECT COUNT(*) as cnt FROM `unified.FF_FACEBOOKLEADADS_DISCOUNTS_VISITS` t2 where t.facebook_ad_id = t2.facebook_ad_id) AS decimal(10,2))) as DistributedSpend
FROM `unified.FF_FACEBOOKLEADADS_DISCOUNTS_VISITS` t
INNER JOIN `unified.ads_data` d
ON d.ad_id = t.facebook_ad_id

这会产生“预期”错误“但得到”(“at [24:178]”。任何人都可以指向BigQuery语法资源或指出我正在犯的错误吗?

1 个答案:

答案 0 :(得分:3)

DECIMAL(10,2)不是有效的BigQuery数据类型。请尝试使用NUMERIC数据类型。

https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types