首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为MySQL中的多个字段选择出现的值数目

为MySQL中的多个字段选择出现的值数目
EN

Stack Overflow用户
提问于 2013-10-23 21:35:06
回答 2查看 55关注 0票数 0

使用MySQL。我有张桌子看起来像这样:

代码语言:javascript
复制
   rawID | a1a | a1b | a2a | a2b | a2c | ...
     1   |  2  |  0  |  0  |  0  |  2  | ...
     2   |  2  |  2  |  0  |  0  |  0  | ...
     3   |  0  |  1  |  1  |  1  |  2  | ...
     4   |  2  |  1  |  2  |  1  |  2  | ...

*字段的可能值在单独的“响应”表中预先定义,范围从0到2。

我想要一个结果,给出每个字段的每个值的出现情况。我见过类似的问题,但只有一个领域。

我希望我的结果是这样的:

代码语言:javascript
复制
   response | a1a | a1b | a2a | a2b | a2c | ...
      0     |  1  |  1  |  2  |  2  |  1  | ...
      1     |  0  |  2  |  1  |  2  |  0  | ...
      2     |  3  |  1  |  1  |  0  |  3  | ...

此表有每个字段的每个值(“响应”)发生的次数。

谢谢各位,

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-23 22:08:56

试试这个:

代码语言:javascript
复制
SELECT
  response,
  sum(a1a = response) a1aCount,
  sum(a1b = response) a1bCount,
  sum(a2a = response) a2aCount,
  sum(a2b = response) a2bCount,
  sum(a2c = response) a2cCount
FROM t, r
GROUP BY response

输出:

代码语言:javascript
复制
| RESPONSE | A1ACOUNT | A1BCOUNT | A2ACOUNT | A2BCOUNT | A2CCOUNT |
|----------|----------|----------|----------|----------|----------|
|        0 |        1 |        1 |        2 |        2 |        1 |
|        1 |        0 |        2 |        1 |        2 |        0 |
|        2 |        3 |        1 |        1 |        0 |        3 |

小提琴这里.

不管response表中的项数多少,这都是可行的。

票数 1
EN

Stack Overflow用户

发布于 2013-10-23 22:03:52

我认为这应该有效(我们假设您的表名是"responses"):

代码语言:javascript
复制
SELECT 0 as response, SUM(r.a1a = 0) as a1a, SUM(r.a1b = 0) as a1b,
SUM(r.a2a = 0) as a2a, SUM(r.a2b = 0) as a2b FROM responses r
UNION
SELECT 1 as response, SUM(r.a1a = 1) as a1a, SUM(r.a1b = 1) as a1b, 
SUM(r.a2a = 1) as a2a, SUM(r.a2b = 1) as a2b FROM responses r
UNION
SELECT 2 as response, SUM(r.a1a = 2) as a1a, SUM(r.a1b = 2) as a1b,    
SUM(r.a2a = 2) as a2a, SUM(r.a2b = 2) as a2b FROM responses r
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19552745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档