Mysql 如何在bigquery中使用标准SQL更改列的数据类型?
我知道这可能是愚蠢的,但没有一个老案例适合我。也不适用于“CAST”方法 我正在尝试运行以下查询,但出现以下错误:Mysql 如何在bigquery中使用标准SQL更改列的数据类型?,mysql,sql,database,google-bigquery,data-analysis,Mysql,Sql,Database,Google Bigquery,Data Analysis,我知道这可能是愚蠢的,但没有一个老案例适合我。也不适用于“CAST”方法 我正在尝试运行以下查询,但出现以下错误: SELECT P.date, P.campaign_id, P.ad_name, P.impressions, P.clicks, P.spend, P.NOM_ENSEMBLE, P.CODE_ENSEMBLE_IMMO, F.FREQUENTATION_CENTRE FROM `project.digital.fb_data` AS P
SELECT
P.date,
P.campaign_id,
P.ad_name,
P.impressions,
P.clicks,
P.spend,
P.NOM_ENSEMBLE,
P.CODE_ENSEMBLE_IMMO,
F.FREQUENTATION_CENTRE
FROM
`project.digital.fb_data` AS P
JOIN
`project.digital.freq_data` AS F
ON
(P.date = F.JOUR AND P.CODE_ENSEMBLE_IMMO=F.CODE_ENSEMBLE_IMMO)
错误:
Error: No matching signature for operator = for argument types: DATE, STRING. Supported signatures: ANY = ANY at [16:4]
下面是BigQuery标准SQL 第一个查询是复制/演示问题的简化查询 标准SQL 将“project.digital.fb_data”作为 选择日期“2019-02-15”`DATE`,1个代码 ,`project.digital.freq_data`AS 选择“02-15-2019”月,1个代码集合,在“zzz”频率中心 选择 P.date, P.CODE_ENSEMBLE_IMMO, F.经常光顾中心 来自'project.digital.fb_data'作为P 加入'project.digital.freq_data'作为F 在P.date=F.JOUR P.CODE_ENSEMBLE_IMMO=F.CODE_ENSEMBLE_IMMO 结果 错误:参数类型:日期、字符串的运算符=没有匹配的签名。支持的签名:ANY=anyat[13:4] 下面的查询演示了如何解决上述问题 标准SQL 将“project.digital.fb_data”作为 选择日期“2019-02-15”`DATE`,1个代码 ,`project.digital.freq_data`AS 选择“02-15-2019”月,1个代码集合,在“zzz”频率中心 选择 P.date, P.CODE_ENSEMBLE_IMMO, F.经常光顾中心 来自'project.digital.fb_data'作为P 加入'project.digital.freq_data'作为F 在P.date=解析日期“%m-%d-%Y”,F.JOUR P.CODE_ENSEMBLE_IMMO=F.CODE_ENSEMBLE_IMMO 结果 行日期代码\u集合\u IMMO频繁出入\u中心 1 2019-02-15 1 zzz
注意:您的F.JOUR un可以采用与上述示例不同的格式-因此,请检查函数以了解如何处理其他问题您是否可以尝试在ON部分中使用:p.date=castF.JOUR作为日期,而不是p.date=F.JOUR。。。你说选角不起作用,但没有说明你试过哪一个。也许这个你以前没试过,可能有用。