`

多个group by实例

阅读更多

一、 多个group by用法

 

select allchange.hotelId,allchange.chn_name ,allchange.isactive,allchange.createtime, max(allchange.operDate) modifytime   from 

 

 

                            (

                                    select t.hotelId hotelId, h.chn_name,h.isactive,h.createtime,t.operdate operDate

                                             from htl_info.t_hotel_log t,htl_info.t_hotel h  

                                             where  t.hotelid=h.hotelid and   t.operdate >= to_date('2015/05/10 00:00:00 ','yyyy/mm/dd hh24:mi:ss')  and t.operdate<=to_date('2015/05/22 00:00:00 ','yyyy/mm/dd hh24:mi:ss')               

                                      union  

                                                                      

                                    select r.hotelId hotelId, h.chn_name,h.isactive,h.createtime, r.operdate operDate

                                             from htl_info.t_roomtype_log r, htl_info.t_hotel h  

                                             where  r.hotelid=h.hotelid and   r.operdate >= to_date('2015/05/10 00:00:00 ','yyyy/mm/dd hh24:mi:ss')  and r.operdate<=to_date('2015/05/22 00:00:00 ','yyyy/mm/dd hh24:mi:ss')

                                                    

                            )  allchange  group by allchange.hotelId  ,allchange.chn_name,allchange.isactive,allchange.createtime

 

 

二、case  加上group by 用法

               

 

  select tt.hotelid,tt.chn_name,case when tt.isactive='0' then '删除' when tt.createtime=tt.operdate then '新建'  else '修改'  end as changetype  from 

 

                         (    select allchange.hotelId,allchange.chn_name ,allchange.isactive isactive,allchange.createtime createtime, max(allchange.operDate) operdate  from 

                                                           

                            (

                                    select t.hotelId hotelId, h.chn_name,h.isactive,h.createtime,t.operdate operDate

                                             from htl_info.t_hotel_log t,htl_info.t_hotel h  

                                             where  t.hotelid=h.hotelid and   t.operdate >= to_date('2015/05/10 00:00:00 ','yyyy/mm/dd hh24:mi:ss')  and t.operdate<=to_date('2015/05/22 00:00:00 ','yyyy/mm/dd hh24:mi:ss')               

                                      union  

                                                                      

                                    select r.hotelId hotelId, h.chn_name,h.isactive,h.createtime, r.operdate operDate

                                             from htl_info.t_roomtype_log r, htl_info.t_hotel h  

                                             where  r.hotelid=h.hotelid and   r.operdate >= to_date('2015/05/10 00:00:00 ','yyyy/mm/dd hh24:mi:ss')  and r.operdate<=to_date('2015/05/22 00:00:00 ','yyyy/mm/dd hh24:mi:ss')

                                                    

                            )  allchange  group by allchange.hotelId  ,allchange.chn_name,allchange.isactive,allchange.createtime

                                 

                          ) tt                 

分享到:
评论

相关推荐

    mysql group by having 实例代码

    mysql中group by语句用于分组查询,可以根据给定数据列的每个成员对查询结果进行分组统计,最终得到一个分组汇总表, 经常和having一起使用,需要的朋友可以参考下

    mysql获取group by总记录行数的方法

    本文实例讲述了mysql获取group by总记录行数的方法,分享给大家供大家参考。具体方法分析如下: 一般来说,mysql获取group by内部可以获取到某字段的记录分组统计总数,而无法统计出分组的记录数。 mysql中可以使用...

    浅谈pandas用groupby后对层级索引levels的处理方法

    层及索引levels,刚开始学习pandas的时候没有太多的操作关于groupby,仅仅是简单的count、sum、size等等,没有更深入的利用groupby后的数据进行处理。近来数据处理的时候有遇到这类问题花了一点时间,所以这里记录...

    Python中的groupby分组功能的实例代码

    pandas中的DataFrame中可以根据某个属性的同一值进行聚合分组,可以选单个属性,也可以选多个属性: 代码示例: import pandas as pd A=pd.DataFrame([['Beijing',1.68,2300,'city','Yes'],['Tianjin',1.13,1293,'...

    实例详解Group by和Having子句

    查询有多个员工的工资不低于2000的部门编号(就是说如果一个部门的员工大于2000的人数有两个或两个以上就查询出来) sql语句: select [DEPARTMENT_ID],count([SALARY]) from [DEPARTMENT] where [SALARY]&gt;'2000' ...

    SQL GROUP BY 详解及简单实例

    GROUP BY 语句用于结合 Aggregate 函数,根据一个或多个列对结果集进行分组。 SQL GROUP BY 语法 SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP ...

    Django中使用group_by的方法

    本文实例讲述了Django中使用group_by的方法。分享给大家供大家参考。具体分析如下: 在Django中怎样使用group_by语句呢?找了很多资料,都没有看到好的,在这里分享两种方法给大家: 首先,我们先建一个简单的模型。...

    获取top前10个Oracle的进程(支持多实例)

    A、避免手工操作的多个代码输入检查 传统检查操作如下: X、通过top找出占用资源的Oracle进程 Y、通过ps确定这个Oracle进程所说实例 Z、连接对应的Oracle实例找出执行SQL B、进行了占用内存大小自动转换,快速...

    MySQL SQL多表关联查询最佳实例

    Mysql学习中 ,单表查询每个人都很容易掌握;但是多表之间的关联查询对于初学者是很难掌握的,以下是我学习中,结合老师所讲例子作的总结,主要就是三张表的关联查询。还包括group by操作。Join on;left join on;...

    Delphi开发范例宝典目录

    实例232 监测是否运行多个程序 297 实例233 防止程序多次运行 298 实例234 开机后程序自动运行 299 实例235 获取任务栏尺寸大小 300 实例236 改变系统提示信息 301 实例237 获取系统环境变量 303 实例...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例174 捕获多个异常 222 第8章 枚举与泛型的应用 223 8.1 枚举使用的简介 224 实例175 查看枚举类型的定义 224 实例176 枚举类型的基本特性 225 实例177 增加枚举元素的信息 226 实例178 选择合适的枚举元素 227 ...

    LINQ_to_SQL语法及实例大全

    6. 带GroupBy形式 22 LINQ to SQL语句(6)之Group By/Having 23 Group By/Having操作符 23 1.简单形式: 23 2.Select匿名类 : 24 3.最大 值 25 4.最小 值 26 5.平均 值 26 6.求和 26 7.计数 27 8.带条件计数 27 9....

    对DataFrame数据中的重复行,利用groupby累加合并的方法详解

    pandas读取一组数据,可能存在重复...先利用 groupby 按照键 id 分组,然后利用sum()函数求和,即可得到每个id的总共学习时间。 以上这篇对DataFrame数据中的重复行,利用groupby累加合并的方法详解就是小编分享给大

Global site tag (gtag.js) - Google Analytics