常用的数据统计Sql 总结
来源:互联网 发布:广数g92车螺纹编程实例 编辑:程序博客网 时间:2024/05/01 23:50
最近刚在搞一个BI的项目,里面需要大量的sql 数据统计相关运用,加深了我又对SQL的理解与使用。
所以,分享几个数据统计时常用的sql 语句总结:
1. 统计各个条件下的数据
selectBatchId,sum(CardSum) 总金额,sum(case when Status=1 then CardSum else 0 end) as 已使用,sum(case when Status=2 then CardSum else 0 end) as 已冻结 from GiftCard group by BatchId
2. 统计每日,每月,每年的数据
select year(AddTime) 年,month(AddTime) 月,day(AddTime) 日,COUNT(1) 数量,sum(CardSum) 销售合计from GiftCardgroup by year(AddTime),month(AddTime),day(AddTime)
3. 某列去重统计
select COUNT(BatchId),COUNT(distinct BatchId),COUNT(distinct BatchName)from GiftCard
4. 行转列
SELECT *FROM ( SELECT BatchName, CardSum as TotAmount FROM GiftCard) as sPIVOT( SUM(TotAmount) FOR BatchName IN (zx测试商品, test新人优惠券,测试高考大放送))AS MyPivot
5. 得到表中最小的未使用的ID号
SELECT (CASE WHEN EXISTS(SELECT * FROM GiftCard b WHERE b.Id = 1) THEN MIN(Id) + 1 ELSE 1 END) as Id FROM GiftCardWHERE NOT Id IN (SELECT a.Id - 1 FROM GiftCard a)
6. 查询某一列数据不重复的数量
select *
from GiftCard a
where not exists(select 1 from GiftCard where BatchName=a.BatchName and ID<a.ID)
7. 按年统计1月到12个月的销量
select year(AddTime) as '年',SUM(case when MONTH(AddTime)=1 then CardSum else 0 end ) as '一月',SUM(case when MONTH(AddTime)=2 then CardSum else 0 end ) as '二月',SUM(case when MONTH(AddTime)=3 then CardSum else 0 end ) as '三月',SUM(case when MONTH(AddTime)=4 then CardSum else 0 end ) as '四月',SUM(case when MONTH(AddTime)=5 then CardSum else 0 end ) as '五月',SUM(case when MONTH(AddTime)=6 then CardSum else 0 end ) as '六月',SUM(case when MONTH(AddTime)=7 then CardSum else 0 end ) as '七月',SUM(case when MONTH(AddTime)=8 then CardSum else 0 end ) as '八月',SUM(case when MONTH(AddTime)=9 then CardSum else 0 end ) as '九月',SUM(case when MONTH(AddTime)=10 then CardSum else 0 end ) as '十月',SUM(case when MONTH(AddTime)=11 then CardSum else 0 end ) as '十一月',SUM(case when MONTH(AddTime)=12 then CardSum else 0 end ) as '十二月'from GiftCardgroup by year(AddTime)
1 0
- 常用的数据统计Sql 总结
- 常用的数据统计Sql 总结
- 常用的数据统计Sql 总结
- 常用的一些数据统计SQL语句
- 常用的数据统计工具
- sql统计当天的数据
- 常用的数据库统计SQL语句
- 常用的数据库统计SQL语句(2)
- SQL对数据进行统计、常用集合函数
- 数据统计相关的常用mongo语句
- Java实现数据统计的常用算法
- Java实现数据统计的常用算法
- SQL 常用统计函数
- SQL Server统计信息(statistics)的总结
- 一则数据统计的SQL语句
- SQL统计相同重复的数据
- 常用数据统计
- 常用的SQL语句总结
- Android 5.0(Lollipop)事件输入系统(Input System)
- Chrome内核浏览器无法阅读本地html问题
- 图片压缩工具
- Struts2与Ajax联合,返回list的问题
- HAXM is not working and emulator runs in emulation mode。模拟器停留在开机界面时报的错。
- 常用的数据统计Sql 总结
- tensorflow学习笔记之word2vec
- JAVA代码实现执行CMD命令
- Canvas实现保存图片到本地
- 观察者模式
- linux中的零散操作
- 无锁实现线程间共享数据
- Android之侧滑删除RecyclerView
- socket基础