mysql - 如何将转换后的行汇总并集中到一个具有相同 ID 的字段中?
问题描述
我目前坚持使用 concat 具有相同 vm id 的两行我的原始 sql 数据看起来像这样 vm_info vm_disk
我已将“数据存储”从列转换为行这是我的 sql 查询,
SELECT vm.vm_info.id,
vm.vm_info.vm,
vm.vm_info.vm_folder,
vm.vm_info.name,
vm.vm_info.cpu_count,
format(vm.vm_info.memory_size_MiB/1024,0) AS Memory_size_GiB,
vm_disk_convert.capacity,
vm_disk_convert.NAS,
vm_disk_convert.vSan,
vm_disk_convert.vSan_intra,
vm.vm_info.power_state,
vm.vm_info.modify_date
FROM vm.vm_info, (
SELECT `vm`, `capacity`,
case when vm.vm_disk.datastores = "NFS-SA3400" then vm.vm_disk.datastores END AS NAS,
case when vm.vm_disk.datastores = "vsanDatastore" then vm.vm_disk.datastores END as vSan,
case when vm.vm_disk.datastores = "vsanDatastore-Intra" then vm.vm_disk.datastores END as vSan_Intra
FROM vm.vm_disk
) AS vm_disk_convert
WHERE vm.vm_info.vm = vm_disk_convert.vm
ORDER BY vm.vm_info.vm_folder, vm.vm_info.vm;
我当前的 sql 结果看起来像我用 group_concat 尝试过的这个 sql 结果 ,但结果显示如下
如何将具有相同 vm id 的行集中到一个字段中? 预期结果 感谢您帮助我!
解决方案
你可以使用 GROUP BY 语句,它会是这样的:
SELECT vm.vm_info.id,
vm.vm_info.vm,
vm.vm_info.vm_folder,
vm.vm_info.name,
vm.vm_info.cpu_count,
format(vm.vm_info.memory_size_MiB/1024,0) AS Memory_size_GiB,
vm_disk_convert.capacity,
vm_disk_convert.NAS,
vm_disk_convert.vSan,
vm_disk_convert.vSan_intra,
vm.vm_info.power_state,
vm.vm_info.os,
vm.vm_info.modify_date
FROM vm.vm_info, (
SELECT `vm`, `capacity`,
case when vm.vm_disk.datastores = "NFS-SA3400" then vm.vm_disk.datastores END AS NAS,
case when vm.vm_disk.datastores = "vsanDatastore" then vm.vm_disk.datastores END as vSan,
case when vm.vm_disk.datastores = "vsanDatastore-Intra" then vm.vm_disk.datastores END as vSan_Intra
FROM vm.vm_disk
) AS vm_disk_convert
GROUP BY `vm`
ORDER BY vm.vm_info.vm_folder, vm.vm_info.vm;
此语句完全符合您的要求...如果我写错了,对不起,我会给您一个教程的链接,您可以在您的项目中使用该教程:https ://www.w3schools.com/sql /sql_groupby.asp
推荐阅读
- java - 如何从 RecyclerView 获取值到详细活动
- c# - XPATH 前面的节点
- java - 如何修复“sessionFactory”或“hibernateTemplate”是必需的问题
- javascript - 使用 Js 更改带有背景的文本颜色
- mysql - MYSQL如何使用连接查询计算百分比值
- workbox - Workbox Precaching 不适用于 / 或 index.php
- javascript - 将带有选择字段的表转换为 js 数组
- javascript - 为什么使用 javascript 将 textarea 切换为只读属性会受到警报提示的影响?
- ms-access - 使用命令按钮以连续形式对文本框进行排序
- javascript - 我需要关于井字游戏的帮助,我无法改变转弯