SQL:使用Group BY两次

时间:2018-02-06 07:46:12

标签: sql oracle

我的表格如下:

INSERT_DATE | WorkOrder_ID | Status

这是一个日志表,其中插入了一个WorkOrder的每个状态更改。因此,一个WorkOrder_ID多次出现,具有不同的状态。 我想要做的是:选择每天和每个WorkOrder_ID的工作订单的“计数”。 所以我需要两个分组:一个用于白天,一个用于WorkOrder_ID

有什么想法吗? 谢谢

1 个答案:

答案 0 :(得分:2)

对于一天中的工作订单,您可以使用

 select INSERT_DATE , count(distinct WorkOrder_ID ) 
 from my_table 
 group by INSERT_DATE 

以及WorkOrder_ID和日期

select INSERT_DATE ,  WorkOrder_ID , count(*) 
 from my_table 
 group by INSERT_DATE , WorkOrder_ID 

以及所有WorkOrder_ID

 select  WorkOrder_ID , count(*) 
 from my_table 
 group by WorkOrder_ID