首页 > 解决方案 > 有没有办法在数据工作室自定义查询中声明变量?

问题描述

我有一个与此处描述的问题类似的问题: Pruning BigQuery partitions with Data studio

我想声明一个变量以在数据工作室中运行自定义查询。

例如 :

DECLARE usd_to_eur_rate FLOAT64;
SET usd_to_eur_rate = 0.8;   

SELECT itemPrice_USD*usd_to_eur_rate as itemPrice_EUR
FROM `dataset.table`

查询在 BigQuery 中有效,但在数据工作室中无效。

与上述主题一样,我收到错误消息:

Data Studio cannot connect to your data set.

Failed to fetch data from the underlying data set

我已阅读解决问题的评论:

DECLARE statement don't work in DataStudio, 
because the whole custom query is wrapped in an outer select 
so this syntax becomes invalid SELECT ........ FROM (DECLARE usd_to_eur_rate ..............................)

尽管如此,我还没有想出一个解决方法......

你们是否知道可以在数据工作室自定义查询中使用的替代语法?

谢谢

标签: google-bigquerygoogle-data-studio

解决方案


@ Pentium10,感谢您的精确。

我将在此处发布一个答案,说明我如何使用此建议最终在数据工作室中进行查询:

代替

DECLARE usd_to_eur_rate FLOAT64;
SET usd_to_eur_rate = 0.8;   

SELECT itemPrice_USD * usd_to_eur_rate AS itemPrice_EUR
FROM `dataset.table`

我一直在使用:

WITH vars AS
(
    SELECT 0.8 AS usd_to_eur_rate 
)

SELECT itemPrice_USD * (SELECT usd_to_eur_rate FROM vars) AS itemPrice_EUR
FROM `dataset.table`

推荐阅读