# #sql #google-bigquery #pivot
Вопрос:
Я пытаюсь выполнить такой запрос, как этот:
select *
from (
select agent, text, expect
from `my.table.runs`
)
pivot (
min(expect) as expect,
min(agent) as agent
for agent in ("august-mr")
)
но получение ошибки
Недопустимое имя поля «expect_august-mr».
Если я использую имя агента с подчеркиванием, как august_mr
это работает нормально. Таким образом, значения в моих данных нарушают запрос.
Есть ли обходной путь для этого?
Комментарии:
1.
"august-mr"
является идентификатором с разделителями, например, именем столбца. Используйте одинарные кавычки для строковых литералов, например'august-mr'
.2. похоже, это ничего не исправит.
Ответ №1:
вы можете добавить псевдоним в такие поля
select *
from (
select agent, text, expect
from `my.table.runs`
)
pivot (
min(expect) as expect,
min(agent) as agent
for agent in ("august-mr" as august_mr)
)