mysql 4.1中新增了FOUND_ROWS()函数:
For a SELECT with a LIMIT clause, the number of rows that would be returned were there no LIMIT clause
A SELECT statement may include a LIMIT clause to restrict the number of rows the server returns to the client. In some cases, it is desirable to know how many rows the statement would have returned without the LIMIT, but without running the statement again. To obtain this row count, include a SQL_CALC_FOUND_ROWS option in the SELECT statement, and then invoke FOUND_ROWS() afterward:
比如说有段sql需要取出一张表的前10行,同时又需要取出符合条件的总数。这在某些翻页操作中很常见
SELECT SQL_CALC_FOUND_ROWS * FROM tbl_name
WHERE id > 100 LIMIT 10;
在上一查询之后,你只需要用FOUND_ROWS()就能获得查询总数,这个数目是抛掉了LIMIT之后的结果数:
SELECT FOUND_ROWS();
其中第一个sql里面的SQL_CALC_FOUND_ROWS不可省略,它表示需要取得结果数,也是后面使用FOUND_ROWS()函数的铺垫。
分享到:
相关推荐
在实际开发过程中,理解并正确使用mysqli_affected_rows函数可以帮助开发者更好地控制和监控数据库操作的行为,特别是在处理大批量数据更新或删除的场景中,获取受影响行数是不可或缺的功能之一。此外,开发者在使用...
mysqli_query函数是mysqli扩展中用于执行SQL查询的函数。它有一个可选的参数,可以设定为MYSQLI_STORE_RESULT或MYSQLI_USE_RESULT,这两个参数指定了如何处理查询结果集。 MYSQLI_STORE_RESULT与MYSQLI_USE_RESULT...
mysqli_fetch_assoc 是 MySQLi 中的一个函数,用于从记录集中获取数据并保存到关联数组中。 知识点 1: mysqli_fetch_assoc 函数 mysqli_fetch_assoc 函数是 MySQLi 中的一个函数,用于将查询结果的一行保存至关联...
2. MYSQLI_NUM:只包含数字索引的数组,列的顺序与在SQL查询结果中的顺序一致。 3. MYSQLI_BOTH:包含关联和数字索引的数组,这是默认行为。 4. MYSQLI_ROW:返回原始的数据库行数据,没有经过任何处理。 示例代码...
在处理数据库查询结果集时,有两个重要的函数经常会被使用到,它们是mysqli_fetch_array()和mysqli_free_result()。 1. mysqli_fetch_array()函数用于从结果集中取得一行作为关联数组,索引数组,或者两者兼具的...
5. `mysqli_num_rows()`:获取查询结果中的行数。 6. `mysqli_close()`:关闭数据库连接。 二、面向对象的MySQLi函数 1. `$mysqli->connect()`:创建连接,与面向过程的`mysqli_connect()`类似,但使用对象方法。...
使用mysqli_select_db()函数,可以简化SQL查询,因为不需要在每个查询中重复指定数据库名。该函数是mysqli扩展中的一个函数,它是为了替代已废弃的mysql扩展中的mysql_select_db()函数而存在的。 使用mysqli_select...
在面向对象模式下,可以使用`connect_errno`和`connect_error`属性检查连接是否成功,而在面向过程模式下,对应的是`mysqli_connect_errno()`和`mysqli_connect_error()`函数。 3. **预处理语句** mysqli支持...
1. **mysqli_affected_rows()**:这个函数用于获取上一个 SQL 操作影响的行数,例如更新或删除操作。返回值为受影响的行数,对于插入操作,如果是自增 ID,返回的是新生成的 ID 值。 2. **mysqli_autocommit()**:...
在使用mysqli扩展进行数据库操作时,你可能还需要掌握其他相关函数,比如mysqli_connect()用于建立数据库连接,mysqli_query()用于执行SQL语句,mysqli_prepare()用于准备预处理语句等。这些函数共同工作,帮助...
在准备SQL语句后,我们用mysqli_stmt_bind_param()函数将变量$country的值与SQL语句中的占位符绑定,这里的"s"表示参数类型为字符串(string)。紧接着,用mysqli_stmt_execute()执行这个准备好的语句。执行成功后,...
$con=mysqli_init(); if (!$con) { die(mysqli_init failed); } mysqli_ssl_set($con,key.pem,cert.pem,cacert.pem,NULL,NULL); if (!mysqli_real_connect($con,localhost,my_user,my_password,my_db)) { die...
在实际应用中,`mysqli_get_server_version()` 可能用于条件判断,比如检查当前服务器是否支持某些特定的SQL特性或优化。例如,如果你知道某个特性只在MySQL 5.6及以上版本可用,你可以先检查版本号再执行相关代码:...
`mysqli_fetch_assoc()`用于获取结果集中的一行作为关联数组,`mysqli_num_rows()`计算结果集中的行数。例如: ```php while ($row = mysqli_fetch_assoc($result)) { echo "Name: " . $row["name"] . ", Email:...