mysql - 转换列中的行
问题描述
我的 MYSQL 数据库中的一个表有问题:我的表是一个 3 维矩阵,即:
FormId, FieldName, FieldValue
160, TITLE, A
160, NAME, B
160, SURNAME, C
161, TITLE, D
161, NAME, E
161, SURNAME, F
162, TITLE, G
162, NAME, H
162, SURNAME, I
我怎样才能得到这个结果?
FormId, Title, Name, Surname
160, A, B, C
161, D, E, F
162, G, H, I
谢谢大家
解决方案
您可以在下面尝试 - 在表达式中使用大小写
select FormId, max(case when FieldName='Title' then FieldValue end) as Title,
max(case when FieldName='Name' then FieldValue end) as Name,
max(case when ieldName='Surname' then FieldValue end) as Surname
from tablename
group by FormId
推荐阅读
- laravel - 如何在 Laravel 中使用 Laravel Excel 设置导出 csv 的编码
- html - 如何使所有div的高度相等?
- html - 为什么推荐主图使用 16:9 的比例?
- javascript - 如何使用胖箭头 es6 语法重写此嵌套调用以设置?
- racket - 向球拍中的类添加类型注释
- python - BeautifulSoup 网页抓取,用于点击按钮后获取信息的网页
- flutter - 如何将文本文件加载到 Flutter 中的字符串变量中
- c# - 修改 ListView 项目时自动调整 ListView 高度
- python - Tkinter 窗口和 pygame 窗口同时打开
- reactjs - 如何更改 Material-UI Button 的 tabIndex?