PHP 计算每天保存的文档总数

用户7978226

我正在尝试获得每天保存的文档总数。但我不知道如何。这是我的数据库中的列及其数据。

report_id    doc_date   total_doc 
- 1          2017-06-06  1  
- 2          2017-06-23  1  
- 3          2017-06-14  1  
- 4          2017-06-12  1  
- 5          2017-06-16  1
- 6          2017-06-21  1
- 7          2017-06-14  1
- 9          2017-06-13  1
- 10         2017-06-21  1
- 11         2017-06-12  1
- 12         2017-06-18  1
- 13         2017-06-12  1
.....

上面有类似的日期,例如,

- 3          2017-06-14  1
- 7          2017-06-14  1 

我需要一个 sql 查询来计算和显示每天保存的文档总数。因此,对于 2017 年 6 月 14 日,总数为 2。有什么想法吗?仅供参考,total_doc 自动等于 1。更新:并显示当天保存的文档总数。

用户7941334
SELECT 
    doc_date,
    count(doc_date) AS saves
FROM documents
GROUP BY doc_date
ORDER BY doc_date ASC;

或者

SELECT
    doc_date,
    sum(total_doc) AS saves
FROM documents
GROUP BY doc_date
ORDER BY doc_date ASC;

注意事项:

1)如果您使用的是第一个选项,那么您可以删除列total_doc这也是我的建议。你有一个很好的doc_date列中日期值的 mysql 格式,所以你可以对它进行可靠的操作。

2)doc_date如果您愿意,您可以按降序对记录进行排序

3)AS saves在使用countor 之类的函数时,不要忘记给列添加别名(就像我对sum. 因为那样你也可以使用HAVING过滤器。所以像这样 - 每天保存不止一个的所有文档:

SELECT 
    doc_date,
    count(doc_date) AS saves
FROM documents
GROUP BY doc_date
HAVING saves > 1
ORDER BY doc_date ASC;

然后您还可以在指定日期仅按一个保存的文档进行过滤:

SELECT 
    doc_date,
    count(doc_date) AS saves
FROM documents
WHERE doc_date = "2017-06-12"
GROUP BY doc_date
HAVING saves > 1
ORDER BY doc_date ASC;

4)或者你也可以忽略HAVINGdoc_date如果你愿意。这将为您提供在指定日期保存的文档。

SELECT count(doc_date) AS saves
FROM documents
WHERE doc_date = "2017-06-12"
GROUP BY doc_date
ORDER BY doc_date ASC;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章