Я думаю, вы сможете получить то, что вы хотите, с помощью внутреннего запроса, который фильтруется по значению во внешнем запросе и возвращает LIMIT обратно:
SELECT
"ID",
(SELECT
p."NAME"
FROM
view_321782990.person AS p, view_321782990.request AS r
WHERE
p."ID" = r."ASSIGNEDTOPERSON" AND r."ID" = outer_r."ID"
LIMIT 1
)
FROM view_321782990.request AS outer_r
Где request."ID"
- это путьотличия от записи с p."ID" = r."ASSIGNEDTOPERSON"
Этот метод зависит от взаимосвязи между этими таблицами и может быть невозможным во всех ситуациях, что приводит меня к следующему:
Я согласен с общим мнением, что это может быть легче сделатьв соединении.Вам может понадобиться добавить объединение в исследование, если его там нет, но как только объединение между представлениями, вы можете получить доступ к полям разных представлений, например, так:
view: request {
# ... sql_table_name, etc ...
dimension: person_name {
sql: ${person.name}
}
# ... mode dimensions, measures, etc ...
}
Если у вас есть четкое представлениео том, как должен выглядеть сгенерированный sql, я бы подробнее посмотрел на , как looker генерирует sql , а здесь - на , как обрабатываются объединения