健壮烤鸡

文章
10
资源
1
加入时间
3年1月10天

MySQL 把结果集转置为多行一.需求二.解决方案

备注:测试数据库版本为MySQL 8.0如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数据sql脚本一.需求要把行转换为列,根据原表给定列的每个值创建一个列。例如,返回每个员工及他们的职位(JOB),目前的查询返回如下结果集:希望重新设置为结果集的格式,使每个职位使用一列:二.解决方案要解决本例的问题,必须使每个job/ename组合唯一,然后,在使用聚集函数去除null时,不会丢失ename。使用标量子查询,按empno给每个员工分等级。使用CASE表达式和聚集