使用别名时在 Apache Phoenix 上"Column reference ambiguous or duplicate names"



使用Apache Phoenix 4.6.0对抗HBase 1.1.2。

我有一个简单的表格创建如下:

CREATE TABLE "events" (
"uuid" VARCHAR(64) PRIMARY KEY,
"event"."session" VARCHAR(64),
"event"."name" VARCHAR(32),
"event"."date" UNSIGNED_DATE,
"product"."name" VARCHAR(32),
"data"."*" VARCHAR(64)
) default_column_family='event', IMMUTABLE_ROWS=true

这些查询有效:

SELECT COUNT(*) FROM "events" AS search WHERE search."event"."name" = 'search'
SELECT COUNT(*) FROM 
(SELECT click."event"."session" 
FROM "events" AS click WHERE "event"."name" = 'click')

但这不是:

SELECT COUNT(*) FROM "events" AS search 
WHERE search."event"."name" = 'search' 
AND search."event"."session" NOT IN (SELECT click."event"."session" 
FROM "events" AS click 
WHERE click."event"."name" = 'click');

错误:错误502(42702):列引用不明确或重复姓名。columnName=name SQL状态:42702错误代码:502

为什么?

对不起作用的count(1)进行尝试。很明显,您对表格进行了别名处理,但可能后台发生了一些带有星号的事情,而星号没有使用别名。

相关内容

最新更新