mysql连表查询实现统计 本帖最后由 superman_lujuzhi 于 2010-10-06 11:18:22 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://blog.csdn.net/ACMAIN_CHM/archive/2009/06/19/4283943.aspxMySQL交叉表 mysql> select user_name, -> sum(if(option_id='2010',1,null)) as `上网了解`, -> sum(if(option_id='2011',1,null)) as `报刊杂志`, -> max(if(option_id='2012',option_result,null)) as `其他`, -> sum(if(option_id='3010',1,null)) as `性价比高`, -> sum(if(option_id='3011',1,null)) as `产品质量好`, -> max(if(option_id='4010',option_result,null)) as `建议` -> from choice_result -> group by user_name;+-----------+----------+----------+----------+----------+------------+--------------+| user_name | 上网了解 | 报刊杂志 | 其他 | 性价比高 | 产品质量好 | 建议 |+-----------+----------+----------+----------+----------+------------+--------------+| 李四 | NULL | NULL | 朋友介绍 | NULL | NULL | 提高产品质量 || 张三 | 1 | NULL | NULL | 1 | NULL | 提高服务水平 |+-----------+----------+----------+----------+----------+------------+--------------+2 rows in set (0.00 sec)mysql> 请问如何输出多个0,默认只有一个零 如何将Mysql程序及其数据库打包进.NET程序安装包? 2个表join for update 存储过程运行中的一个问题 高手说下这个查询语句为何不对 当insert update 遇到 ' " 【】帮我看个程序,最后那个输出怎么解决??? 请教各位高手 mysql每20分钟的数据进行一次group_concat()的疑问? mysql跳过密码验证登录,找不到mysql数据库 mysql可以直接用文件做数据备份吗? MySQL无法插入记录
MySQL交叉表
-> sum(if(option_id='2010',1,null)) as `上网了解`,
-> sum(if(option_id='2011',1,null)) as `报刊杂志`,
-> max(if(option_id='2012',option_result,null)) as `其他`,
-> sum(if(option_id='3010',1,null)) as `性价比高`,
-> sum(if(option_id='3011',1,null)) as `产品质量好`,
-> max(if(option_id='4010',option_result,null)) as `建议`
-> from choice_result
-> group by user_name;
+-----------+----------+----------+----------+----------+------------+--------------+
| user_name | 上网了解 | 报刊杂志 | 其他 | 性价比高 | 产品质量好 | 建议 |
+-----------+----------+----------+----------+----------+------------+--------------+
| 李四 | NULL | NULL | 朋友介绍 | NULL | NULL | 提高产品质量 |
| 张三 | 1 | NULL | NULL | 1 | NULL | 提高服务水平 |
+-----------+----------+----------+----------+----------+------------+--------------+
2 rows in set (0.00 sec)mysql>