失败:SemanticException 列 line_id 发现不止一个 Tables/Subqueries
FAILED: SemanticException Column line_id Found in more than One Tables/Subqueries
我在 运行 运行此配置单元脚本时遇到以下错误。
INSERT OVERWRITE TABLE foo_test PARTITION (ds='${DAY}')
SELECT dt1.time, dt1.line_id, dt1.foo_id, dt1.bar_code
FROM test_logs dt1
JOIN
( SELECT MIN(time) as foo_time, line_id, foo_id
FROM test_logs
WHERE ( ds >= '2015-02-10') AND ds <= '2015-02-16') AND line_id IN ('2609', '2610', '2763')
GROUP BY line_id, foo_id ) dt2
ON dt1.time = dt2.foo_time
WHERE ( dt1.ds >= '2015-02-10') AND dt1.ds <= '2015-02-16') AND line_id IN ('2609', '2610', '2763')
如何 运行 这个 hive 脚本没有错误?
您的 WHERE 子句引用 line_id
,这是不明确的,因为它可能来自 dt1
或 dt2
。您需要将其更改为 dt1.line_id
或 dt2.line_id
,具体取决于您打算引用的内容。
我在 运行 运行此配置单元脚本时遇到以下错误。
INSERT OVERWRITE TABLE foo_test PARTITION (ds='${DAY}')
SELECT dt1.time, dt1.line_id, dt1.foo_id, dt1.bar_code
FROM test_logs dt1
JOIN
( SELECT MIN(time) as foo_time, line_id, foo_id
FROM test_logs
WHERE ( ds >= '2015-02-10') AND ds <= '2015-02-16') AND line_id IN ('2609', '2610', '2763')
GROUP BY line_id, foo_id ) dt2
ON dt1.time = dt2.foo_time
WHERE ( dt1.ds >= '2015-02-10') AND dt1.ds <= '2015-02-16') AND line_id IN ('2609', '2610', '2763')
如何 运行 这个 hive 脚本没有错误?
您的 WHERE 子句引用 line_id
,这是不明确的,因为它可能来自 dt1
或 dt2
。您需要将其更改为 dt1.line_id
或 dt2.line_id
,具体取决于您打算引用的内容。