获取计数但忽略pdo中的重复列值

时间:2015-09-13 20:11:19

标签: php mysql sql select

您好,今天我正在尝试使用PDO for MySQL创建PHP。我希望创建一个系统,告诉我今天有多少人登录我的网站。我已经成功地做了我要问的事情,但是我想在代码中实现一些额外的功能,以使它比以前更好。

代码:

<?php //Gets how many users have logged in today
$res = $pdo->query("SELECT COUNT(*) FROM `user_logins` WHERE `Login_Timestamp` > CURRENT_DATE");
echo $res->fetchColumn();
?>

这是数据库中我的表的结构

表名:user_logins

列:

Id (example: 1)

Login_Username (example: John)

Login_Timestamp (example: 2015-09-13 17:13:38)

Login_Ip (example: 127.0.0.1)

我想仍然加载当前值的数量以获取今天登录的数量,但我只想计算一次IP,目前我有五个值,这些值都是我整天都在使用的IP,但我只想把我标记为1,而不是我登录的次数,每次只有一次。如果我不这样做,它有可能达到很多......有没有办法做到这一点?

2 个答案:

答案 0 :(得分:3)

您可以使用itemEnchants[0]关键字:

Enchantment.getById(int id)

答案 1 :(得分:2)

您可以使用DISTINCT

$res = $pdo->query("SELECT COUNT(DISTINCT Login_Ip) FROM `user_logins` WHERE `Login_Timestamp` > CURRENT_DATE);