mysql存储过程 分列

mysql存储过程 分列,第1张

不需要写过程的,就是个行转列查询,使用group by分组即可,语句如下:

INSERT INTO New_Mydata

(Nameid, Allc1, Allc2, Allc3, Allc4, ALL)

SELECT Nameid,

SUM(CASE Allc WHEN '满意' THEN 1 ELSE 0 END),

SUM(CASE Allc WHEN '一般' THEN 1 ELSE 0 END),

SUM(CASE Allc WHEN '不满意' THEN 1 ELSE 0 END),

SUM(CASE Allc WHEN '未平' THEN 1 ELSE 0 END),

SUM(*)

FROM Mydat

GROUP BY Nameid

SELECT SUBSTRING_INDEX(name, '=', 1) AS city, SUBSTRING_INDEX(name, '=', -1) AS name FROM TB_USER

上面那个是用于查询的,如果是想修改数据库,则用下面的语句:

ALTER TABLE TB_USER

ADD COLUMN city VARCHAR(16) NULL

UPDATE TB_USER SET city = SUBSTRING_INDEX(name, '=', 1),

name = SUBSTRING_INDEX(name, '=', -1)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7951027.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存