Sql ORACLE查询缺少表达式错误

Sql ORACLE查询缺少表达式错误,sql,oracle,Sql,Oracle,我正试图使用上面的查询在apex的application builder中生成一个图表,但为了确保它能工作,我正在用SQL命令测试它,但我不断得到缺少的表达式错误,有人能帮忙吗 select extract (year from CRIME_DATE) year, SUM (CRIME_NO) from crime group by select extract (year from CRIME_DATE) CRIME_DATE order by select extract (year fro

我正试图使用上面的查询在apex的application builder中生成一个图表,但为了确保它能工作,我正在用SQL命令测试它,但我不断得到缺少的表达式错误,有人能帮忙吗

select extract (year from CRIME_DATE) year,
SUM (CRIME_NO)
from crime
group by select extract (year from CRIME_DATE) CRIME_DATE
order by select extract (year from CRIME_DATE) year
这应该可以解决问题。在group by/order by中的extract之后有其他列名(如果您希望多个列通过使用逗号来标识这些列),并且它们在本应存在的行中也有SELECT

对于图表错误…也许可以尝试以下方法(Oracle上有点生锈,因此不确定该方法是否有效):


仅解决图表错误-马歇尔·蒂格罗斯已经解决了您的初始错误-图表生成器的错误非常明显,并且有示例。您需要使用特定的列别名;而且你还需要计算,而不是求和,我认为:

select extract (year from CRIME_DATE) year,
SUM (CRIME_NO)
from crime
group by extract (year from CRIME_DATE)
order by year

您应该从group by和order by Lines的末尾删除日期和年份我仍然收到相同的错误我仍然收到相同的错误您在group by和order by中有SELECT关键字。请删除它们以及列别名。在提取之前也删除select from这在SQL命令中起作用,但当我将其应用于图表时,会出现以下错误:1出现错误无效图表查询:选择提取(从犯罪日期算起的年份)、按提取(从犯罪日期算起的年份)从犯罪组求和(犯罪编号)顺序按提取(从犯罪日期算起的年份)使用以下语法:选择链接、标签、值自…或对返回多个序列的查询使用以下语法:选择链接、标签、值1[、值2[、值3…]从…链接沿图表轴显示的URL标签文本。值1、值2、值3…@user3499533尝试更新的答案…不确定这是否“合法”还是不在Oracle@MarshallTigerus-不,这是不合法的;您只能引用
order by
中的列别名,而不能引用
group by
@AlexPoole中的列别名,因此我刚刚更新的修改版本是合法的then@user3499533对不起,我对图表错误没有什么想法。查询可以工作,但结果似乎不准确。例如,我有3起犯罪,犯罪日期为2013年,但由于某种原因,当我的表中只有10起犯罪时,它显示出惊人的21起犯罪,你知道为什么吗?@user3499533-你在做总和;你是说计数,也许吧?对犯罪数字进行总和似乎很奇怪-这并不能告诉你任何事情。你可以得到大数字,很快…非常有效,谢谢
select extract (year from CRIME_DATE) year,
SUM (CRIME_NO)
from crime
group by extract (year from CRIME_DATE)
order by year
select NULL link,
  extract (year from CRIME_DATE) label,
  COUNT (CRIME_NO) value
from crime
group by extract (year from CRIME_DATE)
order by extract (year from CRIME_DATE);