当我运行此查询,它的工作原理:添加子查询别名结果:SQL命令不能正确地结束
select id1, count(*) from id_table
where id2 = 'X' and id1 in
(
select numA from num_table where numB = 'Y' and numC like '%Z%'
)
group by id1
order by count(*) desc;
然而,当我跑这一次,我得到的SQL命令无法正常结束错误。请注意,唯一的区别是我给了子查询alias'sq1'。
select id1, count(*) from id_table
where id2 = 'X' and id1 in
(
select numA from num_table where numB = 'Y' and numC like '%Z%'
) **sq1**
group by id1
order by count(*) desc;
我需要弄清楚这一点,因为我试图加入到子查询中,因此需要'on'子句的别名。
有人可以解释为什么添加子查询别名触发此错误?
您试图将别名列表而非派生表或列 – Matt
您的查询中没有连接子句 – Amit
您只能为派生表定义别名,而不能为子查询 –