计算sqlite结果集中缓冲的行数 [英] Count number of rows buffered in sqlite result set

查看:64
本文介绍了计算sqlite结果集中缓冲的行数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用count函数来获取结果集中缓冲的行数.

I am using count function to get the number of rows buffered in a resultset.

但是即使结果集为空,它也始终将count返回为1.

But it always returns count as one even if resultset is empty.

请参见下面的代码:

$dbhandle = new SQLite3("sqlitedb_111.db");
$selQuery1 = "SELECT id,dbname,tabname,fieldname FROM scan_results ORDER BY id ASC LIMIT  0,10";
$resQuery1 = $dbhandle->query($selQuery1);
print count($resQuery1);

我在做什么错,我该如何解决?

What am I doing wrong and how can I fix this?

推荐答案

按照

As per your comment if you just want to return the count of records you could wrap your query in a SELECT COUNT(*) and change $dbhandle->query to $dbhandle->querySingle. This will work with or without LIMIT.

$dbhandle = new SQLite3("sqlitedb_111.db");
$selQuery1 = "SELECT COUNT(*) FROM (SELECT id,dbname,tabname,fieldname FROM scan_results ORDER BY id ASC LIMIT  0,10)";
$resQuery1 = $dbhandle->querySingle($selQuery1);
print count($resQuery1);

这篇关于计算sqlite结果集中缓冲的行数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆