首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MySQL中何时与计数的情况

在MySQL中何时与计数的情况
EN

Stack Overflow用户
提问于 2017-01-20 07:43:38
回答 1查看 35关注 0票数 0

我对MySQL上的这个查询有问题。

如果试用此版本:

代码语言:javascript
复制
mysql>  SELECT
    COUNT(*),
    myCode,
    myState
FROM
    `tbl_2016`
WHERE
    `myCode` LIKE '%XI10-2-020012%'
GROUP BY
    `myState`;

产出如下:

代码语言:javascript
复制
+----------+---------------+--------------------------------+
| COUNT(*) | myCode        | myState                        |
+----------+---------------+--------------------------------+
|        5 | XI10-2-020012 | NULL                           |
|        4 | XI10-2-020012 | ACTIVE                         |
|        1 | XI10-2-020012 | NOT ACTIVE                     |
+----------+---------------+--------------------------------+
2 rows in set

但是,如果尝试使用情况下的另一个版本,当语法时:

代码语言:javascript
复制
mysql> SELECT
    myCode,
    COUNT(
        CASE
        WHEN myState IN (
            'Active'
        ) THEN
            1
        ELSE
            0
        END
    ) AS `Active`,
    COUNT(
        CASE
        WHEN myState IN (
            'Not Active'
        ) THEN
            1
        ELSE
            0
        END
    ) AS `Not Active`
FROM
    `tbl_2016`
WHERE
        `myCode` LIKE '%XI10-2-020012%'
GROUP BY
    `myState`;

输出与第一个版本不同:

代码语言:javascript
复制
+---------------+--------+------------+
| myCode        | Active | Not Active |
+---------------+--------+------------+
| XI10-2-020012 |      4 |          4 |
+---------------+--------+------------+
1 row in set

如何解决这个问题?

你能帮帮我吗?

谢谢您,我下面的代码。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-20 08:18:05

在第二版中使用和而不是计数

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41758454

复制
相关文章

相似问题

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