Mysql 行转列 + json

Mysql 行转列 + json[code="java"]SET@EE=”;SET@str_tmp=”;SET@Revenue_JSON=”;SET@Revenue_JSON_tmp=”;SELECT@EE:=CONCAT( @EE, ‘SUM(IF(f…

大家好,又见面了,我是你们的朋友全栈君。


SET @EE = '';
SET @str_tmp = '';

SET @Revenue_JSON = '';
SET @Revenue_JSON_tmp = '';

SELECT @EE := CONCAT(
@EE,
'SUM(IF(fsRevenueTypeName=\'',
fsRevenueTypeName,
'\'',
',fdSubTotal,0)) AS ''revenue_',
fsRevenueTypeName,
''','
) AS aa ,
@Revenue_JSON := CONCAT (
@Revenue_JSON,','',"'
,fsRevenueTypeName,'":'','
,'revenue_',fsRevenueTypeName
)
AS bb
INTO @str_tmp,@Revenue_JSON_tmp
FROM
(
SELECT DISTINCT
fsRevenueTypeName
FROM
TempRevenueType
WHERE fsRevenueTypeName IS NOT NULL
) A
ORDER BY
LENGTH(aa) DESC
LIMIT 1;

-- 拼接 json
SELECT CONCAT('''{',SUBSTRING(@Revenue_JSON_tmp,4),','',"汇总":'',','revenue_汇总',',''}''') INTO @Revenue_JSON_tmp;

SET @QQ = CONCAT(
' CREATE TEMPORARY TABLE TempRevenueType1 ( SELECT fsSellNo3,CONCAT(',@Revenue_JSON_tmp,') as revenue_info',
' FROM ( SELECT fsSellNo as fsSellNo3,',@str_tmp,
' SUM(fdSubTotal) AS revenue_汇总 FROM TempRevenueType Group By fsSellNo) a );'
);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137507.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月1日 下午9:46
下一篇 2022年6月1日 下午9:46


相关推荐

  • navicat12注册机生成相应注册码

    navicat12注册机生成相应注册码转自:http://blog.sina.com.cn/s/blog_1885d23df0102yjw9.html navicat注册机是针对nacicat公司开发的软件而制作的一款激活工具,能够生成相对应的注册码和激活码,不仅能够支持激活nacicat11系列软件,同时可以激活nacicat12系列软件,具体可以激活navicat12formysql、navicat12fo…

    2022年10月13日
    7
  • luigi框架–关于python运行spark程序

    luigi框架–关于python运行spark程序

    2022年3月4日
    38
  • android十进制RGB转换为十六进制RGB

    android十进制RGB转换为十六进制RGB提供一段简便的代码 将十进制的 RGB 一般我是用截图 ctr alt A 显示的那个 RGB 转换为 android 的 xml 文件中描述颜色的十六进制 记得在前面加上 号

    2026年3月18日
    2
  • snmp协议分析_snmp协议工作原理

    snmp协议分析_snmp协议工作原理介绍Snmp协议为简单网络管理协议(SimpleNetworkManagementProtocol),属于应用层协议,传输层使用UDP协议,主要用于网络设备的管理。Snmp协议分为snmp管理站(client端)和snmp代理(server端),snmp管理站通过udp协议向snmp代理发送请求消息,当snmp代理收到请求消息后,返回snmp管理站需要的内容。snmp消息全部通过UDP端…

    2022年10月17日
    4
  • 滑动窗口算法

    滑动窗口算法什么是滑动窗口算法我们学习过计算机网络都知道为了避免拥塞发生 在网络传输时有滑动窗口协议控制传输时流量 该协议允许发送方在停止并等待确认前发送多个数据分组 由于发送方不必每发一个分组就停下来等待确认 因此该协议可以加速数据的传输 提高网络吞吐量 这个跟我们今天说的滑动窗口算法是一个原理 滑动窗口算法的作用该算法的作用就是将我们多层嵌套的循环语句根据局部最优解来转换为单个的循环语句 从而减少时

    2026年3月20日
    2
  • Lightroom人像磨皮滤镜插件portraiture Mac版

    Lightroom人像磨皮滤镜插件portraiture Mac版本次小编为您带来了Portraiture3forLightroomforMac,这是一款适用于Lightroom的lr人像磨皮滤镜插件。lr磨皮插件portraitureMac版功能非常强大,能够快速对图像中的皮肤,眉毛,头发,眼睛瞪部位进行磨皮修饰,去除瑕疵,同时为您保持皮肤的色泽!链接:https://pan.baidu.com/s/1U0QVMQ6Qa8F5NITbBVr3…

    2022年7月22日
    20

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号