mysql 计算单个表中的记录,需要帮助

标签 mysql sql

只有两列的简单表 object:idcdate(创建日期)。我需要另外显示第三列的 sql 查询:在每个对象之前创建的对象数。简单计数不是一种选择 - 我需要在查询中进行明确的日期比较。 非常感谢!

最佳答案

SELECT t1.id, t1.cdate, 
(SELECT COUNT(*) FROM yTable AS t2 WHERE t1.cdate > t2.date)  AS createdbefore
FROM yTable AS t1

应该在性能方面很糟糕,因为它显然必须对每一行进行计数。在您的前端执行此操作会更好。

关于mysql 计算单个表中的记录,需要帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6840450/

相关文章:

mysql - 困难的 MySQL 问题(关系和多行)

mysql - 使用 MAX() 和 GROUP BY 未返回正确的结果

php - MySQL 按 ID 分组并按 MIN(价格)排序

mysql - 在 DB 表中返回每个 'post_type' 最多 5 个

php - 仅使用 Sphinx 搜索引擎 (API-PHP) 进行通配符匹配和邻近度精确匹配

sql - 插入删除的数据,加上一些硬编码值,输出语句

mysql - MySQL 中何时使用单引号、双引号和反引号

sql - 如何预热/准备表/索引统计信息?

sql - 如何在可能包含按字母顺序排列的数字的 varchar 字段上排序?

mysql - 如何修复计算不准确的移动平均线的 SQL 查询