查询以查找过去30天内选择的表的总数:行数

时间:2012-06-26 14:56:22

标签: php mysql

我需要选择过去30天的数据并找到no:rows ....如果我正在计算no:行,我会收到警告。那么还有其他任何选择,找不到:所选部分中的行......我的代码是:

$thirty_reg=mysql_query("SELECT * FROM user ORDER BY user.date DESC LIMIT 30");

$num_thirty=mysql_num_rows($thirty_reg);

echo $num_thirty;

还需要更好的建议来选择过​​去30天的数据......

2 个答案:

答案 0 :(得分:3)

将您的查询修改为此以返回过去30天的行。

SELECT column FROM user WHERE user.date BETWEEN DATE_SUB(NOW(), INTERVAL 30 DAY) AND NOW()

但是,我建议提取行数而不是像这样的记录集:

SELECT COUNT(*) FROM user WHERE user.date BETWEEN DATE_SUB(NOW(), INTERVAL 30 DAY) AND NOW()

答案 1 :(得分:0)

SELECT count(id) FROM user WHERE user.date >= DATE_SUB(NOW(), INTERVAL 30);

Well someone beat me to it haha.