PHP 统计记录条数

我现在有个表user字段有idnamepassdate1admin1232013-8-12user12342013-8-13aaaaa1232013-8-24aaaa11... 我现在有个表
user
字段 有 id name pass date
1 admin 123 2013-8-1

2 user 1234 2013-8-1

3 aaaaa 123 2013-8-2
4 aaaa1 123 2013-8-2
5 aaaa2 123 2013-8-2
6 aaaa3 123 2013-8-2
7 aaaa4 123 2013-8-2
3 aaaa5 123 2013-9-1
3 aaaa6 123 2013-9-3
在PHP页里怎么显示
每天的注册人数
如: 2013-8-1 2
2013-8-2 5

2013-9-1 1

2013-9-2 1

每月的注册人数
如:2013-8 7
2013-8 2
请写完整
$sql="SELECT ……";

echo ……;
展开
 我来答
百度网友8bcff2eea8
推荐于2016-06-20 · 超过23用户采纳过TA的回答
知道答主
回答量:40
采纳率:100%
帮助的人:45.1万
展开全部
  1. 第一种方法:查询时候直接统计

    在需要输出网站用户注册数,或者插入数据之前判断是否有重复记录的时候,就需要获取满足条件的MySQL查询的记录数目。

    $sql="SELECT COUNT(*) AS count FROM TABLE WHERE id='$id'";
    $result=mysql_fetch_array(mysql_query($sql));
    $count=$result['count'];

  2. 第二种方法:先取出,后统计

    $sql="SELECT * FROM TABLE WHERE id='$id'";
    $result=mysql_fetch_array(mysql_query($sql));
    $count=count($result);//或者$count=mysql_num_rows($result);

    不过直接使用MySQL的COUNT(*)在数据量庞大的时候,效率的优势是十分显著的,因为后者需要二次计算,所以还是最好使用前者进行数据条数的统计。

gogo_oh
2013-08-02 · TA获得超过266个赞
知道答主
回答量:83
采纳率:0%
帮助的人:77.4万
展开全部
select count(*) as 注册人数,date From user group by date;
就这条SQL语句
更多追问追答
追问
AS 后面的 注册人数 怎么写?
怎么像我那个的循环显示出来。
追答
conn.php
<?php
$host='localhost';//数据库服务器
$user='root';//数据库用户名
$password='123456';//数据库密码
$database='userdb';//数据库名
$conn=@mysql_connect($host,$user,$password) or die('数据库连接失败!');
@mysql_select_db($database) or die('没有找到数据库!');
mysql_query("set names 'utf8'");//选择编码
?>

index.php

<?
include('conn.php');
$sql = "select count(*) as regNum,date From user group by date";
$retSql = mysql_query($sql);
$contents = mysql_fetch_array($retSql );
if(mysql_num_rows($retSql)){ // 如果$total不为空则执行以下语句
do
        {
             $regNum = $contents['regNum'];
             $date = $contents['date'];
             echo $retNum.'--'.$date.'<br>';  
             }while($contents = mysql_fetch_array($retSql)); //do....while 

}
?>

大概就这样 具体你再调试下吧。

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
秦始汉武heart
2015-11-11 · 超过57用户采纳过TA的回答
知道小有建树答主
回答量:95
采纳率:0%
帮助的人:80.7万
展开全部
select count(*) from 数据表;也可以查出来以后count(数组);前一种方法速度要快
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
全栈之巅
2013-08-02 · TA获得超过530个赞
知道小有建树答主
回答量:460
采纳率:0%
帮助的人:356万
展开全部
--按月
select count(*),date from user GROUP BY left(date,7);
--按天
select count(*),date from user GROUP BY date;
--有问必答
http://wxsblog.com/ask
更多追问追答
追问
怎么显示出我要的效果呢。
追答
剩下的就跟SQL没关系了,自己参考PHP手册输出MYSQL查询的内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
笔刀侠_广州
2015-11-19 · TA获得超过5650个赞
知道大有可为答主
回答量:2002
采纳率:66%
帮助的人:555万
展开全部
直接把sql语句count()发送给数据库引擎,获取返回值即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式