Php 获取多个条件的计数
我的问题是我想在一个查询中得到三个条件的计数。我知道我可以通过运行多个查询来做到这一点,但问题是我只需要在一个查询中运行它 我的疑问是我尝试过的是Php 获取多个条件的计数,php,mysql,Php,Mysql,我的问题是我想在一个查询中得到三个条件的计数。我知道我可以通过运行多个查询来做到这一点,但问题是我只需要在一个查询中运行它 我的疑问是我尝试过的是 SELECT COUNT( IF( da <3, da, 0 ) ) AS da1, COUNT( IF( da <2, da, 0 ) ) AS da2, COUNT( IF( da <1, da, 0 ) ) AS da3 FROM tv 但预期的结果是 4 4 4 2 1 0 表中da列的
SELECT COUNT( IF( da <3, da, 0 ) ) AS da1,
COUNT( IF( da <2, da, 0 ) ) AS da2,
COUNT( IF( da <1, da, 0 ) ) AS da3
FROM tv
但预期的结果是
4 4 4
2 1 0
表中da列的数据为
3 2 1 3
COUNT需要与groupby一起使用-我想这可能是您的问题,请尝试按“da”分组。我刚刚找到了我的问题的解决方案,但PSR的解决方案也是正确的
SELECT *
FROM (
SELECT COUNT( da ) AS da1
FROM tv
WHERE da <3
) AS da1, (
SELECT COUNT( da ) AS da2
FROM tv
WHERE da <2
) AS da2, (
SELECT COUNT( da ) AS da3
FROM tv
WHERE da <1
) AS da3
不过,这不再是一个查询了。@MarshallHouse它的子查询。我尝试使用group by,但它给出了错误的输出。3 X 3矩阵输出。
SELECT *
FROM (
SELECT COUNT( da ) AS da1
FROM tv
WHERE da <3
) AS da1, (
SELECT COUNT( da ) AS da2
FROM tv
WHERE da <2
) AS da2, (
SELECT COUNT( da ) AS da3
FROM tv
WHERE da <1
) AS da3