【发布时间】:2021-09-22 14:03:16
【问题描述】:
我在 hiveql 中写了这样的代码。
SELECT
ttt1.rid,
a,
s,
ttt2.num
FROM
(
(
SELECT
rid,
r ['a'] AS a,
r ['s'] AS s
FROM
l
WHERE
dt BETWEEN '20210914'
AND '20210917'
AND r ['act'] = 3
AND r ['pos'] = 1
AND r ['s'] = 50011
AND r ['c'] = 'anti'
) ttt1
JOIN (
SELECT
r ['a'] AS a,
r ['s'] AS s,
count(1) AS num
FROM
l
WHERE
dt BETWEEN '20210914'
AND '20210917'
AND r ['act'] = 3
AND r ['pos'] = 1
AND r ['s'] = 50011
AND r ['c'] = 'anti'
GROUP BY
r ['s'],
r ['a']
) ttt2 ON (
ttt1.a = ttt2.a
AND ttt1.s = ttt2.s
)
)
我想知道为什么它会出现模棱两可的错误。
第 5:5 行:“c”列不明确
CUZ a 和s 是这两个表的join 键,它可以忽略<COLUMN_NAME> 之前的<TABLE_NAME>。
谁能给我一些解释?
提前致谢。
【问题讨论】: