在实施以下查询时:
select distinct(city)
from station
where substr(distinct(city),1,1) IN ['A','E','I','O','U'];
我收到以下错误:
第1行的错误: ORA-00936:缺少表达
使用Oracle Sql。 我仍然是使用SQL的初学者,因此无法想出这个
答案 0 :(得分:1)
不需要在哪里写明显不同,因为当你提到选择列时,你会得到不同的价值。 IN的语法和
expression IN (value1, value2, ... value_n);
更正了查询
select distinct city
from station
where substr(city,1,1) IN ('A','E','I','O','U');
答案 1 :(得分:0)
你的陈述中有两个拼写错误。
distinct clause
不能用作substr
function
内的表达式(最后结果已成为distinct
)。让你的sql像这样:
select distinct(city)
from station
where substr(city,1,1) IN ('A','E','I','O','U');
答案 2 :(得分:0)
SELECT city
FROM station
WHERE SUBSTR(city,1,1) IN ('A','E','I','O','U')
GROUP BY city;
最好使用GROUP BY
代替DISTINCT
。