MySQL 行变列

复制代码
SELECT cmoup,it_ye,SUM(aunt) FROM (

SELECT
	cmroup,
	CASE 
	
	WHEN SD_UPRICE = 0 THEN
		'buer'
	WHEN SUBSTRING(ST_DATE,1,2) = '988889'  THEN
		'cacel'
	WHEN SD_DELE >=SD_REQDATE   THEN
		'ovdue'				
	ELSE
		'other'
END AS itetype,

	OS_TY*SPRICE*S_RATE AS amount
FROM
	`biz_rp_oo` 
)	 AS tab1

GROUP BY cm_grp,ittype

通过case when 或者Sum if 语法糖把行变成列

复制代码
SELECT  

cm_gr AS itemo,

SUM(IF(SD_UPRICE = 0 ,OS_Q,0)) AS itemfer,

SUM(IF(SD_DELIVERY_DATE >=SD_REQUEST_DATE,OS_Q,0)) AS itr_due,

SUM(IF(SUBSTRING(SD_R,1,2) != '50' && SUBSTRING(SD_REQUEST_DATE,1,2) AS it

FROM biz_rso

GROUP BY cmoup
ORDER BY cmup
相关推荐
何传令21 分钟前
SQL排查、分析海量数据以及锁机制
数据库·sql·mysql
msg_data42 分钟前
windows环境下MySQL 8.0 修改或重置密码
数据库·mysql
踏过山河,踏过海2 小时前
Django自带的加密算法
数据库·django·sqlite
黑白极客3 小时前
如何判断一个数据库是不是出问题了?
数据库·mysql
不辉放弃3 小时前
Spark的累加器(Accumulator)
大数据·数据库·spark
aini_lovee3 小时前
python命令行解析模块argparse
服务器·前端·数据库
Chase_______3 小时前
redis快速入门及使用
java·数据库·redis·学习·spring·缓存
不辉放弃4 小时前
Spark的宽窄依赖
大数据·数据库·pyspark
noravinsc4 小时前
django 按照外键排序
数据库·django·sqlite