我正在研究PHP
和MySQL
,我想统计今天和昨天产生的结果。按天生成结果
这是我的phpmyadmin
的屏幕截图,表是results
。在date_generate
专栏中,我已经使用TIMESTAMP
我有这个疑问这算总成绩
<?php
$query = $db->query("SELECT * FROM `results`");
$count = $query->rowCount();
echo $count;
我正在研究PHP
和MySQL
,我想统计今天和昨天产生的结果。按天生成结果
这是我的phpmyadmin
的屏幕截图,表是results
。在date_generate
专栏中,我已经使用TIMESTAMP
我有这个疑问这算总成绩
<?php
$query = $db->query("SELECT * FROM `results`");
$count = $query->rowCount();
echo $count;
替换查询:
$query = $db->query("SELECT * FROM `results` where date_generate BETWEEN DATE_ADD(CURDATE(), INTERVAL -1 day) AND CURDATE()");
$query->execute();
echo $count = $query->rowCount();
感谢现在的工作 –
检查更新的答案,并使用$ count变量。 echo $ query-> execute();将始终返回1或0,因为它的返回类型将始终为BOOL(true或false) –
yes now working fime :) –
您需要使用group by
得到基于date_genrate创建的记录。所以,你的查询将会像 考虑date_generate
作为timestammp
SELECT DATE(FROM_UNIXTIME(date_generate)) AS date_g, COUNT(id) AS NumPosts
FROM results
WHERE date_generate BETWEEN DATE_ADD(CURDATE(), INTERVAL -1 day) AND CURDATE()
GROUP BY date_g
ORDER BY date_g
我试过这个,但仍然这显示输出是1 这里是查询我试过 '<?php $ query = $ db-> query(“ SELECT DATE(FROM_UNIXTIME(date_generate))AS date_g,COUNT(ID)AS NumPosts 从结果 WHERE date_generate BETWEEN DATE_ADD(CURDATE(),间隔1天)和CURDATE() GROUP BY date_g ORDER BY date_g “) ; echo $ query-> execute();?>' –
get row_count .... execute将只返回执行成功或不成功的查询....尝试直接在phpmyadmin中运行查询并查看结果... – Naincy
谢谢,问题由@VikasUmrao解决 –
这里有一个提示:开始使用'WHERE'条款。在寻求帮助之前,你应该展示一些最小的努力。 –
是的,我昨天尝试的形式,但仍然存在问题,你可以发布此查询 –
欢迎来到Stackoverflow。在提出新问题之前请做一些调查。这个已经被多次回答了。检查此链接:http://stackoverflow.com/questions/10395444/mysql-count-and-group-by-day –