无法在 SELECT 中选择 _PARTIONTIME,但可以在 INSERT 中选择它

Tam*_*ein 3 google-bigquery

运行以下命令时,SELECT我收到此错误消息

错误:字段名称“_PARTITIONTIME”无效。字段名称不允许以(不区分大小写)前缀 _PARTITION、TABLEFILE和 _ROW_TIMESTAMP开头

SELECT
    _PARTITIONTIME,
    jobId
FROM
    `project.dataset.audit`
WHERE
    _PARTITIONTIME >= TIMESTAMP("2019-02-20")
Run Code Online (Sandbox Code Playgroud)

但是,当我在 DML 中使用它时,查询正在工作

INSERT INTO
  `project.dataset.audit_clustered`
  (
      _PARTITIONTIME,
      jobId,
  )
SELECT
    _PARTITIONTIME,
    jobId
FROM
    `project.dataset.audit`
WHERE
    _PARTITIONTIME >= TIMESTAMP("2019-02-20")
Run Code Online (Sandbox Code Playgroud)

我有两个问题:

  1. 为什么SELECT单独不起作用
  2. 是否保证能INSERT正常工作并将数据插入到目标表的正确分区

Fel*_*ffa 5

代替

SELECT  _PARTITIONTIME
Run Code Online (Sandbox Code Playgroud)

SELECT  _PARTITIONTIME AS something
Run Code Online (Sandbox Code Playgroud)

这是因为结果集不能有以 开头的列_,但您可以将其命名为其他名称。