我想使用MySQL来收集当月但不是过去的新行总和。
我有这张桌子:
id, gamer_id, date
我想查看当月登记的新游戏玩家数量,但前几个月没有记录。
我该怎么做?
mysql_num_rows(
mysql_query(
"SELECT id FROM gamers WHERE date >= '2012-01-01' GROUP BY gamer_id"
)
);
但是在这里,我不知道如何做IF,有人可以帮助我吗?
答案 0 :(得分:1)
list($cnt) = mysql_fetch_row(mysql_query(
"SELECT COUNT(`id`) FROM `gamers` WHERE `date` >= '2012-01-01'"
));
特别是在列名称周围使用反引号非常重要,因为date
是一个保留字。
修改强>
我并不是真的了解你的情况,听起来你可能需要修改你的数据库结构。无论如何,这个查询应该是您正在寻找的:
list($cnt) = mysql_fetch_row(mysql_query(
"SELECT COUNT(`id`) FROM `gamers` WHERE MIN(`date`) >= '2012-01-01'" GROUP BY `gamer_id`
));