问题
我正在创建一个查询,以统一分配每个广告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语法资源或指出我正在犯的错误吗?
答案 0 :(得分:3)
DECIMAL(10,2)
不是有效的BigQuery数据类型。请尝试使用NUMERIC
数据类型。
https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types