我有一个SQL查询,虽然它正在执行,但我应该如何验证它是否给了我想要的结果。 例如:我的查询
$query3 = "SELECT COUNT(DISTINCT(uid)) AS `num`
FROM `user_info`
WHERE date(starttime)='2011-10-10'";
在上面的查询中,我尝试计算名为user ID's(uid)
的表中user-info
的不同date
的数量,其中{{1}}是2011-10-10。
我应该如何显示为给定日期计算的计数?。我需要了解它并对其执行一些进一步的操作!
答案 0 :(得分:1)
$query3 = "SELECT COUNT(DISTINCT uid) AS `num`
FROM `user_info`
WHERE date(starttime)='2011-10-10'";
$result = mysql_query($query3);
$row = mysql_fetch_array($result);
echo $row['num'];
答案 1 :(得分:0)
只是做:
SELECT COUNT(DISTINCT uid) AS `num`
FROM `user_info`
WHERE date(starttime)='2011-10-10'
This SO post详细介绍了count
和count(distinct ...)
的工作原理。只有count
,count(all ... )
的隐藏/假设函数实际发生(它只是默认值)。如果您只想计算不同的东西,请将其切换为非默认值,然后执行count(distinct ...)
。我不知道在我写sql的前6个月里它是否存在......
答案 2 :(得分:0)
你可以设置一个变量来结果......
SET @userVar=SELECT
COUNT(DISTINCT uid)
FROM
user_info
WHERE
DATE(starttime)='2011-10-10';
然后您可以在下一个操作或查询中使用该变量。