这是非常基本的,所以我不知道为什么它不起作用。
我正在尝试使用另一个表中的udids从表中获取行。
查询:
SELECT aliasA.udid, aliasA.score
FROM (TABLE_QUERY(TableA,'REGEXP_MATCH(table_id, "Scores_2014_04_01_5")')) as aliasA
INNER JOIN ProjectB.udids as aliasB
ON aliasA.udid = aliasB.udid
错误:
Field 'aliasA.udid' not found in table 'TableA.Scores_2014_04_01_5'.
但是有字段" udid"在两个表中
请帮助我,这应该是这么简单我疯了!
似乎问题出在(TABLE_QUERY(TableA,'REGEXP_MATCH(table_id, "Scores_2014_04_01_5")')) as aliasA
上,因为如果我使用TableA.Scores_2014_04_01_5
就行了。
但是,对我来说使用TABLE_QUERY!
至关重要答案 0 :(得分:2)
别名似乎与TABLE_QUERY
无关。一个快速的解决方法可能是使用SELECT内部,如下面的代码片段。
SELECT aliasA.udid, aliasA.score
FROM (SELECT * FROM TABLE_QUERY(TableA,'REGEXP_MATCH(table_id, "Scores_2014_04_01_5")')) as aliasA
INNER JOIN ProjectB.udids as aliasB
ON aliasA.udid = aliasB.udid