我在 BigQuery 中有一个脚本,例如:
选择 a_random_name 为 a_understandable_name b_random_name 为 b_understandable_name 开始时间
concat(a_random_name,b_random_name) 作为扩展名, DATETIME_TRUNC(start_time,DAY) 作为日
来自“我的表”
但是我想在脚本中使用可理解的名称来进行进一步的工作,所以我尝试使用嵌套查询:
从中选择 * (选择 a_random_name 为 a_understandable_name b_random_name 为 b_understandable_name 开始时间
来自“我的表”)
concat(a_understandable_name,b_understandable_name) 作为扩展名, DATETIME_TRUNC(start_time,DAY) 作为日
我正在尝试移动转换,例如导入和重命名查询后的 concat、DateTime_Trunc,但我在 concat 和 DateTime_Trunc 中的“AS”语句上收到错误 - 问题似乎是我无法在此处创建列?
如果我使用 concat(a_understandable_name,b_understandable_name) DATETIME_TRUNC(开始时间,天)
它可以工作,但我在输出中看不到执行这些计算的任何列 FWIW 我是初学者,所以这可能是基本的东西。
您需要从子查询本身进行选择,因此您实际上需要翻转此处的顺序。尝试以下操作:
SELECT
CONCAT(a_understandable_name,b_understandable_name) as extended_name,
DATETIME_TRUNC(start_time,DAY) as Day
FROM
(SELECT
a_random_name as a_understandable_name,
b_random_name as b_understandable_name,
start_time
FROM 'my_table')