工作小技巧--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智能手表测血压?
  • 魔灵召唤在哪里设置为日本语
  • 东方航空应用怎么开启积分过期提醒
  • 一个不落下!三星手机指令大全
  • 热门搜索
    江苏大学京江学院怎么样 如何拒绝别人借钱 怎么去除黑斑 如何解散qq群 野帝怎么样 电影怎么下载到u盘 验孕棒什么时候测最准 如何评价李鸿章 高血压肾病如何治疗 emm表情是什么意思啊