ORA-00904: 分组子句后的标识符无效
ORA-00904 : invalid identifier after grouping clause
我正在尝试 运行 这个 select 命令:
select
r.id,
r.trip_reason,
r.status,
to_char(trunc(r.trip_date),'DD/MM/YYYY') AS trip_date,
c.country, count(a.request_id) AS AZ_Travelers,
t.travel_by,
tt.type,
r.trip_city,
r.nr_non_az,
initcap(e.first_name || ' ' || e.last_name) AS requestor,
r.requestor_id
from et_request r, et_country c, et_travel_by t,
et_trip_type tt, hr_dwh.pm_employees e, et_approval a
where nvl(r.archived,0)<>1
and trunc(r.trip_date) >= trunc(sysdate)
and r.requestor_id = e.empl_id
and r.id = a.request_id
and r.trip_country_code = c.id
and r.travel_by_id = t.id
and r.trip_type_id = tt.id
group by r.id, r.trip_reason, r.status, trip_date, c.country, AZ_Travelers,
t.travel_by, tt.type, r.trip_city, r.nr_non_az, requestor, r.requestor_id
order by r.trip_date;
但是,我收到以下错误:
ORA-00904: "REQUESTOR": invalid identifier
我注意在我的 group by
子句中使用每个 table 字段,但我收到此错误。有什么线索吗?
数据库没有名为 requestor
的列——此时,它只是你告诉它给结果集中某些东西的标签——它还没有生成yet and so 在查询中遇到该名称时不知道如何处理。
您可以按该计算列的组件进行分组,例如将 GROUP BY
语句中的 requestor
替换为 e.first_name, e.last_name
。
我正在尝试 运行 这个 select 命令:
select
r.id,
r.trip_reason,
r.status,
to_char(trunc(r.trip_date),'DD/MM/YYYY') AS trip_date,
c.country, count(a.request_id) AS AZ_Travelers,
t.travel_by,
tt.type,
r.trip_city,
r.nr_non_az,
initcap(e.first_name || ' ' || e.last_name) AS requestor,
r.requestor_id
from et_request r, et_country c, et_travel_by t,
et_trip_type tt, hr_dwh.pm_employees e, et_approval a
where nvl(r.archived,0)<>1
and trunc(r.trip_date) >= trunc(sysdate)
and r.requestor_id = e.empl_id
and r.id = a.request_id
and r.trip_country_code = c.id
and r.travel_by_id = t.id
and r.trip_type_id = tt.id
group by r.id, r.trip_reason, r.status, trip_date, c.country, AZ_Travelers,
t.travel_by, tt.type, r.trip_city, r.nr_non_az, requestor, r.requestor_id
order by r.trip_date;
但是,我收到以下错误:
ORA-00904: "REQUESTOR": invalid identifier
我注意在我的 group by
子句中使用每个 table 字段,但我收到此错误。有什么线索吗?
数据库没有名为 requestor
的列——此时,它只是你告诉它给结果集中某些东西的标签——它还没有生成yet and so 在查询中遇到该名称时不知道如何处理。
您可以按该计算列的组件进行分组,例如将 GROUP BY
语句中的 requestor
替换为 e.first_name, e.last_name
。