mysql行列转换及字段合并

数据表:
在这里插入图片描述

第一种方法:CASE WHEN THEN ELSE END

SELECT
 `name`,
 MAX(
  CASE 
  WHEN course='语文' THEN
   score
  END
 ) AS 语文,
 MAX(
  CASE 
  WHEN course='数学' THEN
   score
  END
 ) AS 数学, 
 MAX(
  CASE 
  WHEN course='英语' THEN
   score
  END
 ) AS 英语
FROM
 student
GROUP BY `name`
;

结果如下:
在这里插入图片描述

  • max—聚合函数 取最大值
  • as 语文—别名作为列名
  • max函数可以改成SUM-----求和函数

合并字段显示:利用group_cancat(course,”:”,”score”)

SELECT
 `name`,
 GROUP_CONCAT(course, ":", score) AS 成绩
FROM
 student
GROUP BY
 `name`;

在这里插入图片描述

第二种方法:IF()语句

SELECT 'name',
MAX(IF(course='语文',score,0)) AS 语文,
MAX(IF(course='数学',score,0)) AS 数学,
MAX(IF(course='英语',score,0)) AS 英语
FROM
 student
GROUP BY `name`

在这里插入图片描述

MySQL中查询并转换BLOB字段可以使用MySQL函数CAST。通过使用CAST(fieldName as covertFieldType)将一个字段转换为另一个字段的数据类型。例如,如果要查询并转换名为notice_content的BLOB字段,可以执行以下语句:select CAST(notice_content as char) notice_content from sys_notice。这将把notice_content字段从BLOB类型转换为CHAR类型,并将结果命名为notice_content。\[2\]请注意,BLOB和TEXT类型在存储和检索过程中不会进行大小写转换,因此它们在这方面是相同的。此外,对于BLOB和TEXT列的索引,需要指定索引前缀的长度,并且这些列不能有默认值。\[3\] #### 引用[.reference_title] - *1* *3* [Mybatis对MySQL中BLOB字段的读取](https://blog.csdn.net/weixin_47061482/article/details/128382172)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [查看mysql 字段类型BLOB的字段内容](https://blog.csdn.net/weixin_45233000/article/details/125604733)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值