2010-03-03 91 views
3

我有一個複雜的MySQL查詢,它需要大量的時間,從超過150k行的表中進行選擇,並且有多個JOINS和子查詢。我限制了結果的數量,但是我需要知道總的行數。MySQL總行數

有沒有辦法重複查詢與COUNT(*)作爲領域得到他們? (重複查詢幾乎使腳本完成的時間加倍)

回答

3

MySQL有一個名爲SQL_CALC_FOUND_ROWS的子句,您在SELECT之後和任何字段名稱之前放置了子句。然後你調用第二個查詢,它只是SELECT FOUND_ROWS() AS rows,它給你前面的查詢找到了多少行。

+0

有關詳情,請訪問:http://dev.mysql.com/doc/refman/4.1/en/information-functions.html#function_found-rows – cmptrgeekken 2010-03-03 02:15:17