1

我在教程中找到了一个参考,这个 0 返回第一行但我“不明白”如果有超过 1 行,例如下面的函数怎么办?(即:我有一个包含 200 个用户的表,而“UsersName”这一列只是其他 10 个用户中的一个,那么为什么是零?)

有人可以说明为什么这个 0 在这行代码中吗?

谢谢

function member_count() {
    return mysql_result(mysql_query("SELECT COUNT(`UsersName`) FROM `users` WHERE `Active` = 1"), 0);
}
4

3 回答 3

5

你不能查一下 PHP 文档吗?是比较好的...

string mysql_result ( resource $result , int $row [, mixed $field = 0 ] )

正在检索的结果中的行号。行号从 0 开始。

http://php.net/manual/en/function.mysql-result.php

想象一下你做了一个SELECT * FROM users,其中表包含

name  | age
David | 29
John  | 18
Paul  | 26

第 0 行是“David - 29”,第 1 行是“John - 18”,依此类推。

于 2013-04-17T12:47:50.360 回答
0

看这个页面

http://php.net/manual/en/function.mysql-result.php

mysql_result ( resource $result , int $row [, mixed $field = 0 ] )

从 MySQL 结果集中检索一个单元格的内容。

在处理大型结果集时,您应该考虑使用获取整行的函数之一(在下面指定)。由于这些函数在一个函数调用中返回多个单元格的内容,因此它们比 mysql_result() 快得多。另外,请注意,为 field 参数指定数字偏移量比指定 fieldname 或 tablename.fieldname 参数要快得多。

结果

The result resource that is being evaluated. This result comes from a call to `mysql_query().`

The row number from the result that's being retrieved. Row numbers start at 0.

场地

The name or offset of the field being retrieved.

It can be the field's offset, the field's name, or the field's table dot field name (tablename.fieldname). If the column name has been aliased ('select foo as bar from...'), use the alias instead of the column name. If undefined, the first field is retrieved.
于 2013-04-17T12:48:01.410 回答
0

对,它返回第一行。您发布的查询也返回一行。阅读 MySQL 中的函数 COUNT()。

您也可以出于多种原因使用它,即如果第一行也是 users 表中的管理员用户并且您只需要它,无论自动增量 ID 或用户名/密码等是什么。

于 2013-04-17T12:48:04.403 回答