3

我有一个与此处描述的问题类似的问题: 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 ..............................)

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

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

谢谢

4

2 回答 2

3

@ 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`
于 2021-07-02T10:40:07.383 回答
2

一种解决方法是创建一个表来保存该值,然后从表中选择该值。

正如我在另一个线程上写的那样,所有 DataStudio 查询都可以包装在外部选择语句中。

于 2021-07-01T18:43:34.737 回答