工作小技巧--Oracle列转行函数 listagg 的使用

 时间:2024-10-12 23:00:48

1、首先叙述一下业务需求,我们有一张车辆位置信息表,其中包含:车牌号、年、月、日、时、经度、维度 7列信息(车辆上的定位设备会定时上报),我们需要通过SQL语句获取一辆车在特定某一天(年月日)有多少个小时会上报经纬度信息(即上报信息的设备工作正常),以及都是哪些小时在上报(一个字符串表示即可,比如 20,21,22 表明这一天20点21点22点上报了经纬度信息)。建表语句如下:CREATE TABLE CARINFO ( CARNO VARCHAR2(32), CYEAR INTEGER, CMONTH INTEGER, CDAY INTEGER, CHOUR INTEGER, CLON NUMBER, CLAT NUMBER );最后需要达到的查询结果如图3示。

工作小技巧--Oracle列转行函数 listagg 的使用工作小技巧--Oracle列转行函数 listagg 的使用工作小技巧--Oracle列转行函数 listagg 的使用

4、命令解释: listagg(chour, ',') within group(order by chour) , 将一个分组内的 chour 列的值排序后(order by chour)通过逗号连接起来。注意,该函数是Oracle数据库内置函数,只有针对Oracle数据库的SQL语句才可以使用!

  • 农民工工资所得税怎么处理
  • 怎么用jWotch智能手表测血压?
  • 魔灵召唤在哪里设置为日本语
  • 东方航空应用怎么开启积分过期提醒
  • 一个不落下!三星手机指令大全
  • 热门搜索
    泰国旅游攻略注意事项 四川九寨沟旅游 欧洲旅游线路 亚庇旅游攻略 避暑山庄旅游 莆田旅游景点大全 大连旅游局 萍乡旅游 旅游合同范本 旅游天地