栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

可以在MySQL中使用交叉表/数据透视查询吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

可以在MySQL中使用交叉表/数据透视查询吗?

您可以使用此查询-

SELECt  supplier_id,  MAX(IF(date = '2012-01-01', value, NULL)) AS '2012-01-01',  MAX(IF(date = '2012-01-03', value, NULL)) AS '2012-01-03',  MAX(IF(date = '2012-05-01', value, NULL)) AS '2012-05-01'FROM (  SELECt supplier_id, DATE(date) date, CONCAt(SUM(price), '(', qty, ')') value FROM supplier    GROUP BY supplier_id, DATE(date)    ) t  GROUP BY supplier_id;+-------------+------------+------------+------------+| supplier_id | 2012-01-01 | 2012-01-03 | 2012-05-01 |+-------------+------------+------------+------------+|1 | 500.00(2)  | 450.00(10) | NULL       ||2 | 400.00(5)  | NULL       | NULL       ||3 | NULL       | NULL       | 500.00(1)  |+-------------+------------+------------+------------+

它产生您想要的结果。但是,如果您想动态地进行操作,请参阅这篇文章“自动执行数据透视表查询”-http:
//www.artfulsoftware.com/infotree/queries.php#523,或者该链接-
动态数据透视表。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/411751.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号