自刨自吃,闲云野鹤,眼净心净,天宽地宽。
MySQL 对于 COUNT(*) 和 LIMIT 同时使用的 BUG
对一个有 29 条记录的表进行如下操作:
SELECT COUNT( sys_uia_account.ID ) FROM sys_uia_account结果 29SELECT COUNT( sys_uia_account.ID ) FROM sys_uia_account LIMIT 10结果 29SELECT COUNT( sys_uia_account.ID ) FROM sys_uia_account LIMIT 10 , 10没有结果
看来以后使用 COUNT(*) 的时候不能同时使用 LIMIT offset, row_count 这种表达方式了。
PS:如果统计全表记录,使用下面的方法会更加快捷:
1 2 3 | SELECT SQL_CALC_FOUND_ROWS * FROM sys_uia_account; SELECT FOUND_ROWS( ) ; |
唯一需要注意的就是,这两个查询必须在一起进行,因为 SQL_CALC_FOUND_ROWS 不对结果进行任何缓存。
| Print article | This entry was posted by 净空无道 on August 17, 2008 at 23:53, and is filed under TechniquE. Follow any responses to this post through RSS 2.0. You can leave a response or trackback from your own site. |



