在php中获取sql结果中的行数

时间:2011-11-06 21:18:28

标签: php sql

有没有办法编写php代码来为你提供sql查询中的行数(并在屏幕上打印数字),而不必在每行中实际循环并将数字相加?

3 个答案:

答案 0 :(得分:1)

听起来你在寻找COUNT?

SELECT COUNT(id) as number_users FROM users

然后它被视为普通资源,您可以在其中提取行和number_users列。

编辑:你的问题是有点奇怪的措辞。听起来你可能正在寻找SUM()和GROUP BY。或者可能是COUNT()和GROUP BY。

答案 1 :(得分:0)

对于MySQL,它的mysql_num_rows:

http://www.php.net/manual/en/function.mysql-num-rows.php

答案 2 :(得分:0)

多种方式:

SELECT COUNT(*) `tot` FROM table

(注意,不是COUNT(field),好像field为NULL,不会计算行数)

,如果您已经查询了数据库,并且想知道所有已经拉过的行,那么让我们说在一个数组中,你可以做一个

count($array)

如果您没有循环使用值,而是计划值,则可以执行mysql_num_rows

最后,如果您在SELECT中执行了LIMIT,则可以向选择中添加SQL_CALC_FOUND_ROWS,然后使用FOUND_ROWS()

SELECT SQL_CALC_FOUND_ROWS * FROM table WHERE field="value" LIMIT 0,100; /* grab first 100 rows WHERE field="value" */
SELECT FOUND_ROWS();  /* return the total number of rows WHERE field="value" */