首页 > 解决方案 > ORACLE中如何仅按一个字段分组?

问题描述

我有这个查询

select id, order_number, order_date from employee_trip_orders
group by id, order_number, order_date

但是,我想使用 group by 只有一个字段,例如

select id, order_number, order_date from employee_trip_orders
group by order_date 

但这给了我“不按表达式分组”错误。我怎样才能只对一列进行分组?提前致谢

现有数据:

id   order_number  order_date

1      553         22.01.2015

2      141         15.07.2019

3      142         28.02.2020

4     1412         22.01.2015

预期结果:

1   553     22.01.2015

4   1412    22.01.2015

2   141     15.07.2019

3   142     28.02.2020

标签: sqloraclegroup-by

解决方案


SELECT如果您没有在 中使用相同的列,则不能在 中使用列Group By

如果你想使用不存在的列Group by,那么你将不得不使用Aggregation Functions.

编辑:提到预期的结果,我想你想使用Order by

select id, order_number, order_date from employee_trip_orders
order by order_date,id;

推荐阅读