sql统计某一字段不同状态的数量,时间戳转日期格式、按月统计使用

背景

1、在sql语句中统计一个字段的不同状态时,需要将每个状态的数量查出来,在进行统一输出,涉及表多次查询,下面用一个聚合函数的方式进行查询,比较方便,容易理解。
2、有时候数据表中的时间字段存储的是时间戳格式,如果我们需要按照年月等输出数据时,例如按月统计报表,就需要我们先进行转化和截取,在进行分组,下面语句中通过to_char直接解决,简单方便。
3、以下测试语句为pgsql

测试代码

--在谈项目按月类型统计
SELECT date_month, SUM( CASE WHEN talk.projecttypename = '融资租赁项目' THEN 1 ELSE 0 END ) zlconut,SUM ( CASE WHEN talk.projecttypename = '工程建设项目' THEN 1 ELSE 0 END ) jscount 
FROM(SELECTprojecttypename,to_char( to_timestamp( createtime / 1000 ), 'yyyy' ) date_year,to_char( to_timestamp( createtime / 1000 ), 'MM' ) date_month FROMdfc_projecttalk ) talk  group by date_month--落户项目按月统计SELECT date_month, SUM( CASE WHEN settle.projecttypename = '融资租赁项目' THEN 1 ELSE 0 END ) zlconut,SUM ( CASE WHEN settle.projecttypename = '工程建设项目' THEN 1 ELSE 0 END ) jscount 
FROM(SELECTprojecttypename,to_char( to_timestamp( createtime / 1000 ), 'yyyy' ) date_year,to_char( to_timestamp( createtime / 1000 ), 'MM' ) date_month FROMdfc_projectsettle ) settle  group by date_month--认定项目
SELECTdate_month,SUM ( CASE WHEN identityp.endscalename = '微型项目' THEN 1 ELSE 0 END ) wxconut,SUM ( CASE WHEN identityp.endscalename = '一般项目' THEN 1 ELSE 0 END ) ybcount,SUM ( CASE WHEN identityp.endscalename = '一般大项目' THEN 1 ELSE 0 END ) ybdcount,SUM ( CASE WHEN identityp.endscalename = '重大项目' THEN 1 ELSE 0 END ) zdcount 
FROM(SELECTendscalename,to_char( to_timestamp( endtime / 1000 ), 'yyyy' ) date_year,to_char( to_timestamp( endtime / 1000 ), 'MM' ) date_month FROMdfc_projectidentify ) identityp 
GROUP BYdate_month

测试结果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/9378.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jmeter使用之:怎么编写扩展函数(二)

目录 前言: 1、实现function的类的package声明必须包含".functions" 2、需要继承org.apache.jmeter.functions.AbstractFunction,并且实现相应的方法。 第一步:eclipse 导入jmeter目录:apache-jmeter-2.13libext下的…

卡尔曼滤波简单实例分析

1 现实问题 假设一个物体位于1000米处以自由落体运动,底面有一台具有特殊功能的雷达,对其进行观察,现需要对其下落的高度进行测量; (1)建模 速度:V gt 位置:Y -Vt Y0 &#xff0…

ES6: 模版字符串

前言: ES5 中我们表示字符串的时候使用 或者 "" 作用: 在 ES6 中,我们还有一个东西可以表示字符串,就是 (反引号) let str hello worldconsole.log(typeof str) // string和单引号还有双引号的区别: 反引号可以换行…

Android 应用层 到 HAL 层

Android 应用层 到 HAL 层 1、相关知识点1.1 概要1.2 参考 2、拿SensorService举例2.1 Android Apps > Android Framework阶段2.2 Android Framework内部阶段2.2.1 frameworks/base2.2.2 frameworks/native 2.3 Android Framework > HAL 阶段2.3.1 旧版 HAL 1、相关知识点…

Python爬虫——怎么搭建和维护一个本地IP池

目录 背景 一、什么是本地代理IP池 二、代理IP池功能架构图 三、各个组件功能说明及示例代码 1. IP池管理器 2. 代理IP获取器 3. IP质量检测器 4、数据存储器 5、API接口层 6、应用程序 总结 背景 在我们进行爬虫工作时,经常需要使用代理IP。大多数代理…

计网笔记--网络层

1--网络层概述 网络层主要问题: ① 网络层向运输层提供怎样的服务? (可靠或不可靠) ② 网络层寻址问题(IP 地址) ③ 路由选择问题 (路径) 重点在于:TCP/IP协议栈 2--网络…

Pygame Zero(pgzrun)游戏库介绍

Pygame Zero(pgzrun)游戏库介绍 pgzero是python的一个第三方库。pgzrun 是 python game zero run 的缩写, 它对 Pygame 进行了封装, 屏蔽了繁琐枯燥的框架代码, 让学习者可以更专注于游戏的实现逻辑, 并且更快看到成果。 官网https://pygame-zero.read…

ASP.Net Core Web API快速搭建后台服务搭载SQLServer+FreeSQL(一)

目录 一.建立WebAPI所需要的环境 1. IDE编辑器:VisualStudio2019 2.数据库安装:SqlServer 3.下载SQL Server Management Studio (SSMS) 二.创建ASP.Net Core Web API工程 1.创建模板工程 2. 试运行案例接口 3.安装FreeSQL工具包 三.设计数据库 启…

【MySQL】不允许你不了解联结表

🎬 博客主页:博主链接 🎥 本文由 M malloc 原创,首发于 CSDN🙉 🎄 学习专栏推荐:LeetCode刷题集! 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指…

“生鲜蔬”APP的设计与实现

1.引言 在这个科技与网络齐头并进的时代,外卖服务正在飞速发展,人们对外卖APP系统功能需求越来越多,开发APP的人员对自己的要求也要越来越高,要从所做APP外卖系统所实现的功能和用户的需求来对系统进行设计,还需要与当…

python3开发-Word助手

目录 背景 思路 步骤 代码示例 总结 背景 在日常工作和学习中,我们经常需要处理Word文档,例如编辑、提取内容、生成报告等。而Python是一门功能强大的编程语言,它提供了丰富的库和工具,使得我们可以利用Python来处理Word文档…

Git无法上传删除 Commit里面有大文件

1.Bug描述 因为在一次提交中不小心把一个打包的aab文件弄到commit文件里了,于是在上传的时候push rejected 了。 因为GitHub的文件上限是100M,但是打的包太大了,有170M,所以是不能上传的,但是又是已经在Commit历史中了…