很多站长朋友们都不太清楚php查询结果条数,今天小编就来给大家整理php查询结果条数,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 为什么我用php查询mongodb数据库中的某个集合中的文档的条数,得到的结果和实际情况不一致? 2、 PHP 统计记录条数 3、 php怎么把从数据库里查询的数据十条一页的显示出来 4、 php查询到多条数据结果后,将每一条结果放入数组 5、 php怎么获取mysql查询语句的条数 6、 如何在PHP中获取MYSQL数据库返回的数据的行数? 为什么我用php查询mongodb数据库中的某个集合中的文档的条数,得到的结果和实际情况不一致?我也遇到过:
官方文档解释了这种现象的原因以及解决方法:
不准确的原因:
操作的是分片的集合(前提);
shard分片正在做块迁移,导致有重复数据出现
存在孤立文档(因为不正常关机、块迁移失败等原因导致)
解决方法
使用聚合aggregate的方式查询count数量,shell命令如下:
db.collection.aggregate(
[
{ $group: { _id: null, count: { $sum: 1 } } }
])
也可以直接将原数据导出,将表删除后重新导入就可以了(我是这么处理的)
PHP 统计记录条数第一种方法:查询时候直接统计
在需要输出网站用户注册数,或者插入数据之前判断是否有重复记录的时候,就需要获取满足条件的MySQL查询的记录数目。
$sql="SELECT COUNT(*) AS count FROM TABLE WHERE id='$id'";
$result=mysql_fetch_array(mysql_query($sql));
$count=$result['count'];
第二种方法:先取出,后统计
$sql="SELECT * FROM TABLE WHERE id='$id'";
$result=mysql_fetch_array(mysql_query($sql));
$count=count($result);//或者$count=mysql_num_rows($result);
不过直接使用MySQL的COUNT(*)在数据量庞大的时候,效率的优势是十分显著的,因为后者需要二次计算,所以还是最好使用前者进行数据条数的统计。
php怎么把从数据库里查询的数据十条一页的显示出来按照楼主已死贴出完整代码,看不懂再问
$sql="select * from `user` order by `id` desc";//自己随便写一个sql语句测试用,根据自己需求替换,不要加limit
$pagesize=10;
$num=mysql_num_rows(mysql_query($sql));
$pagecount=ceil($num/$pagesize);
$pageall=$num;
if(!isset($_GET["page"])){//这里翻页模式用GET方式传参解决,?page=1的方式
$pageindex="1";
}else{
$pageindex=$_GET["page"];
if($pageindex==""){
$pageindex="1";
}elseif(!is_numeric($pageindex)){
$pageindex="1";
}elseif(substr_count($pageindex,".")!=0){
$pageindex="1";
}elseif($pageindex>$pagecount){
$pageindex=$pagecount;
}elseif($pageindex<=1){
$pageindex="1";
}
}
if($pageindex<$pagecount){
$start=($pageindex-1)*$pagesize;
$sql1=$sql." limit ".$start.",".$pagesize;
}else{
if($num%$pagesize!=0){
$start=($pageindex-1)*$pagesize;
$sql1=$sql." limit ".$start.",".($num%$pagesize);
}else{
$start=($pageindex-1)*$pagesize;
$sql1=$sql." limit ".$start.",".$pagesize;
}
}
$result=mysql_query($sql1);
while($RS = @mysql_fetch_array($result)){
//按要求读出每次循环的字段
}
php查询到多条数据结果后,将每一条结果放入数组PHP查询到的数据存放到数组里面,一般使用$arr[]=$row的方式实现,$row是mysql_fetch_array获得的一行数据,本身是一个数组,执行上面的语句之后,这一行会添加存放在额为数组$arr的最后。
典型的例子代码是这样的:
mysql_connect('127.0.0.1', 'root', '123456');
$sql='select * from test.tab';
if ($res=mysql_query($sql)){
while($row=mysql_fetch_array($res)) $result[]=$row;
mysql_free_resule($res);
}else echo "执行SQL语句:$sql<br>\n错误:".mysql_error();
echo '查询结果在下面的额为数组里面:<pre>';
print_r($result);
echo '</pre>';
php怎么获取mysql查询语句的条数如果你只想获取条数,查询语句应该这样优化一下
$a=mysql_query("select
count(*)
as
shuliang
from
DB");
$row=mysql_fetch_assoc($a);
$count=$row['shuliang'];
//这个就是查询语句的条数
当然,你以上语句也是可以的,不过就是不够优化,如下:
$a=mysql_query("SELECT
*
FROM
Db");
$count=mysql_affected_rows();
//这个就是你想要的条数
如何在PHP中获取MYSQL数据库返回的数据的行数?1、首先打开MYSQL的管理工具,新建一个test表,并且在表中插入两个字段。
2、接下来在Editplus编辑器中创建一个PHP文件,然后进行数据库连接,并且选择要操作的数据库。
3、然后通过mysql_query方法执行一个Insert的插入语句。
4、执行完毕以后,我们回到数据库管理工具中,这个时候你会发现插入的中文乱码了。
5、接下来我们在PHP文件中通过mysql_query执行一个set names utf8语句即可完成操作。
关于php查询结果条数的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php查询结果条数 php查询语句的详细内容...