请解释为什么以下查询:
select in.status as "no_installments"
, count(in.id) as "installment"
FROM instalsched.instalment in
GROUP BY in.status;
返回
ORA-00936:表达式缺失 00936. 00000 - “缺少表达” *原因:
*行动: 行错误:1列:12
答案 0 :(得分:2)
in
是SQL中的关键词。它用作where子句的一部分,例如where person_id in (1,2,3,4)
。要解决此问题,只需更改别名即可。
select
in1.status as "no_installments",
count(in1.id) as "installment"
FROM instalsched.instalment in1
GROUP BY in1.status;
答案 1 :(得分:0)
in
是一个关键字。使用不同的别名或用双引号括起来。
答案 2 :(得分:0)
“in”是SQL语法中的保留字。您应该尝试使用其他非保留字,例如“inst”或类似的东西。