Php MySQL查询中的行数

Php MySQL查询中的行数,php,mysql,Php,Mysql,我使用的脚本执行mySQL查询的方式与我以前使用的不同。首先是: $query = $db->query("SELECT * etc ..... "); 然后 变量显示为$result['a'],$result['b']。等等 我只想计算查询选择的行数,但是mysql\u num\u rows对$result不起作用 我可以改用什么?您可以将查询更改为: SELECT count(*) as cnt etc ..... 然后从查询中读取结果。您可以使用count函数 这似乎在第1

我使用的脚本执行mySQL查询的方式与我以前使用的不同。首先是:

$query = $db->query("SELECT * etc .....  ");
然后

变量显示为
$result['a']
$result['b']
。等等

我只想计算查询选择的行数,但是mysql\u num\u rows
$result
不起作用


我可以改用什么?

您可以将查询更改为:

SELECT count(*) as cnt etc .....  

然后从查询中读取结果。

您可以使用count函数


这似乎在第1行之后停止查询。可能是因为查询具有内部联接?我希望在完成查询后计算行数。这对我仍然不起作用。由于我有一个while循环在mySQL查询的所有行中运行,所以我选择在每次循环运行时将$count增加一个,然后在最后显示$count。不是很优雅,但很管用。
SELECT count(*) as cnt etc .....  
$query = $db->query("SELECT count(*) as count from (SELECT * etc .....  ) as sq  ");
$result = $db->fetchArray($query);
echo $result['count'];