Can't SET variable in BigQuery | Error: Cannot coerce expression

Can't SET variable in BigQuery | Error: Cannot coerce expression

我正在尝试设置变量以便进一步操作。

但是当我在第 2 行设置我的第一个变量时 ("SET(new_user)=( "),我得到一个错误

Query error: Cannot coerce expression ( SELECT COUNT(*) FROM...

DECLARE new_user, total_user int64;

SET(new_user)=(
    SELECT 
        COUNT(*) 
        FROM `projet.dataset.user`
        WHERE timestamp BETWEEN '2022-02-09 19:13:00' AND CURRENT_TIMESTAMP()
);


SET(total_user)=(
    SELECT 
        COUNT(*),
        FROM `projet.dataset.user`
);

问题出在我使用 SET 的方式上,因为我的 SELECT 没有工作。

取决于您的实际需求 - 我看到解决问题的选项很少

选项 1

DECLARE new_user, total_user int64;

SET new_user=(
    SELECT 
        COUNT(*) 
        FROM `projet.dataset.user`
        WHERE timestamp BETWEEN '2022-02-09 19:13:00' AND CURRENT_TIMESTAMP()
);


SET total_user =(
    SELECT 
        COUNT(*),
        FROM `projet.dataset.user`
);

选项 2

DECLARE new_user, total_user int64;

SET(new_user)=(
    SELECT AS STRUCT
        COUNT(*) 
        FROM `projet.dataset.user`
        WHERE timestamp BETWEEN '2022-02-09 19:13:00' AND CURRENT_TIMESTAMP()
);


SET(total_user)=(
    SELECT AS STRUCT 
        COUNT(*),
        FROM `projet.dataset.user`
);