记一次行转列
需求:把SginBody列提取到一行里面多列显示
数据源如下:
SELECT
`view_flowinfo`.`InstanceID` AS `InstanceID`,
max((
CASE
WHEN ( `view_flowinfo`.`name` = '供应部主任审核' ) THEN
`view_flowinfo`.`SignBody`
END
)) AS `gybzrsh`,
max((
CASE
WHEN ( `view_flowinfo`.`name` = '财务会计复核三单' ) THEN
`view_flowinfo`.`SignBody`
END
)) AS `cwsh`,
max((
CASE
WHEN ( `view_flowinfo`.`name` = '财务主任审核' ) THEN
`view_flowinfo`.`SignBody`
END
)) AS `cwzgsh`,
max((
CASE
WHEN ( `view_flowinfo`.`name` = '经营副总' ) THEN
`view_flowinfo`.`SignBody`
END
)) AS `fgldsh`,
max((
CASE
WHEN ( `view_flowinfo`.`name` = '财务副总审核' ) THEN
`view_flowinfo`.`SignBody`
END
)) AS `cwfzsp`,
max((
CASE
WHEN ( `view_flowinfo`.`name` = '总经理审批' ) THEN
`view_flowinfo`.`SignBody`
END
)) AS `zjlsp`,
max((
CASE
WHEN ( `view_flowinfo`.`ActivityID` = 'AC_11339Flow_90189VER30' ) THEN
`view_flowinfo`.`SignBody`
END
)) AS `dszsp`
FROM
`view_flowinfo`
WHERE InstanceID = '87878a34-79b6-4eb1-a1a0-99d909ef31ad'
GROUP BY
`view_flowinfo`.`InstanceID`
效果如下: