简体   繁体   English

在MYSQL中计算查询结果

[英]Counting Query Results in MYSQL

I have run the following MYSQL query: 我运行了以下MYSQL查询:

   SELECT TIMESTAMPDIFF(MONTH,`original_date`, `last_modified_date`) 
   FROM `ft2_form_1` 
   WHERE `success` LIKE '1' 
   AND `color` LIKE '1'

This returns a series of numbers like this: 5 5 5 6 7 7 7 5 6 这会返回一系列数字,如下所示:5 5 5 6 7 7 7 5 6

I would like to count the return values so the result would look something like this 我想计算返回值,所以结果看起来像这样

    |  value  |   count  |
    ----------------------
    |       5 |        4 |
    |       6 |        2 |
    |       7 |        3 |

How would I modify my Query to return these results? 如何修改我的查询以返回这些结果?

Try this 尝试这个

SELECT t.value,  COUNT(t.value) FROM
(
       SELECT TIMESTAMPDIFF(MONTH,`original_date`, `last_modified_date`) AS value
       FROM `ft2_form_1` 
       WHERE `success` LIKE '1' 
       AND `color` LIKE '1'
) t
GROUP BY t.value

OR 要么

   SELECT 
      TIMESTAMPDIFF(MONTH,`original_date`, `last_modified_date`) AS value, COUNT(*)
   FROM `ft2_form_1` 
   WHERE `success` LIKE '1' 
   AND `color` LIKE '1'
   GROUP BY TIMESTAMPDIFF(MONTH,`original_date`, `last_modified_date`)

You can try this Query 您可以尝试此查询

SELECT table.value,  COUNT(table.value) FROM
(
    SELECT TIMESTAMPDIFF(MONTH,`original_date`, `last_modified_date`) AS value
    FROM `ft2_form_1`        
        WHERE `success` LIKE '1' 
        AND `color` LIKE '1'
) table
GROUP BY table.value;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM