问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

SQL 拆分时间并分组

发布网友 发布时间:2022-04-11 14:28

我来回答

2个回答

热心网友 时间:2022-04-11 15:57

--假设你的投诉时间字段是date类型
--统计18年累计到当月的投诉量
select
投诉产品,
sum(case when to_char(投诉时间,'yyyymm')='201801' then 1 else 0 end) "一月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201802' then 1 else 0 end) "二月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201803' then 1 else 0 end) "三月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201804' then 1 else 0 end) "四月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201805' then 1 else 0 end) "五月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201806' then 1 else 0 end) "六月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201807' then 1 else 0 end) "七月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201808' then 1 else 0 end) "八月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201809' then 1 else 0 end) "九月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201810' then 1 else 0 end) "十月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201811' then 1 else 0 end) "十一月",
sum(case when to_char(投诉时间,'yyyymm')>='201801' and to_char(投诉时间,'yyyymm')<='201812' then 1 else 0 end) "十二月"
from 投诉表
group by 投诉产品;
--统计每月投诉量
select
投诉产品,
sum(case when to_char(投诉时间,'yyyymm')='201801' then 1 else 0 end) "一月",
sum(case when to_char(投诉时间,'yyyymm')='201802' then 1 else 0 end) "二月",
sum(case when to_char(投诉时间,'yyyymm')='201803' then 1 else 0 end) "三月",
sum(case when to_char(投诉时间,'yyyymm')='201804' then 1 else 0 end) "四月",
sum(case when to_char(投诉时间,'yyyymm')='201805' then 1 else 0 end) "五月",
sum(case when to_char(投诉时间,'yyyymm')='201806' then 1 else 0 end) "六月",
sum(case when to_char(投诉时间,'yyyymm')='201807' then 1 else 0 end) "七月",
sum(case when to_char(投诉时间,'yyyymm')='201808' then 1 else 0 end) "八月",
sum(case when to_char(投诉时间,'yyyymm')='201809' then 1 else 0 end) "九月",
sum(case when to_char(投诉时间,'yyyymm')='201810' then 1 else 0 end) "十月",
sum(case when to_char(投诉时间,'yyyymm')='201811' then 1 else 0 end) "十一月",
sum(case when to_char(投诉时间,'yyyymm')='201812' then 1 else 0 end) "十二月"
from 投诉表
group by 投诉产品;

热心网友 时间:2022-04-11 17:15

group by 月份,什么的,你可以看看sql中group by 的用法,具体的你看看就应该知道了。追问看图1,表里面只有完整时间,不是月份

追答截取字符串取值啊,非得纠结。有什么条件可以获取就按这个条件来截取有用信息,

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 Oracle按半小时分组的sql 按时间段group by的 sql怎么写 SQL 怎样实现连续时间段中按小时&#47;分钟间隔查询数据?ACCESS 数据库 sql 时间 分组 查询 小白请教关于sqlserver数据库 sysobjects表的问题 Sqlserver 中如何根据时间(24小时) 模糊查询一个字段并统计该字段24小时 sqlserver按时间统计每天17:30到第二日17:30为一天的数据 mysql按时间分段统计的sql语句怎么写好 SQL 怎样实现连续时间段中按小时/分钟间隔查询数据?ACCESS 数据库 SQLServer中向数据库中增加数据文件 代码 在SQL server中怎么在同一个主文件组下建两个不同的数据文件?求格式,查询代码! 邮箱:lqt_devil@163.com 创建sql数据库代码 怎么用c#代码在sql中建立新的数据库? 数据库压缩备份是怎么回事 请问用叧个备份软件好,压缩备份SQLSERVER数据库? 为什么sqlserver数据库备份30g只有不到10g sqlserver2008 如何压缩备份数据库 安装SQL server时总报hotfix installer已停止工作怎么办??急!!! SQLServer的工作模式是怎样的? asp.net如何调用SQLSERVER视图 SQL怎么实现时间间隔? sql 按照小时分组查询并统计 按时间段分组sql sql 指定时间段内分组计算 查询条件使用datediff函数,这样写可以吗 如何用SQL查找3天的数据,一个月的,半年的数据 当天的为 DATEDIFF(day, HY_Adddate, GETDATE())=0 数据库的备份sqlserver VB的数据库备份代码怎么写? PIVOT 怎样才能跟 XML PATH 搭配使用实现行转列? 如何用Pivot实现行列转换 PIVOT 能跟 XML PATH 一起使用来进行行转列吗? unpivot只能和聚合函数用吗 请教如何用SQL语句把图片存入ACCESS数据库? 如何把桌面上的一个图片利用SQL语句将其存入数据库中 怎么用sql sever2008 将图片插入数据库,比如说要把D盘新建文件夹里的1.jpg 插入到数据库 怎样用sql语言向sql数据库中添加图片? 用SQL语句插入图片 用sql语句如何插入图片,如何把E盘的图片插入到ACCESS表中? SQL中怎样用语句获取一张图片的路径, 就是获取一张图片的路径 并添加到数据库 SQL server 用insert into 语句将图片插入到数据库表中