-1
嗨,我需要得到的結果,並應用order by
只在有限的部分。你知道,當你申請順序由您訂購的所有行,我要的是排序僅在有限的部分,這裏有一個例子:我怎樣才能「排序」僅限於mysql查詢中的LIMIT結果?
// all rows
SELECT * FROM users ORDER BY name
// partial 40 rows ordered "globally"
SELECT * FROM users ORDER BY name LIMIT 200,40
解決的辦法是:
// partial 40 rows ordered "locally"
SELECT * FROM (SELECT * FROM users LIMIT 200,40) AS T ORDER BY name
這解決方案運行良好,但存在一個問題:我正在處理需要表中的TOTAL行數的Listview組件(使用SQL_CALC_FOUND_ROWS
)。如果我使用這個解決方案,我無法得到這個總數,我會得到有限的部分數(40)。
我希望你能給我基於查詢的解決方案,比如像:「ORDER BY LOCALLY
」
所以你只希望行1-40排序? –
'SELECT * FROM users LIMIT 200,40'將導致** UNDETERMINED **結果。這是如何工作的?你的預期產出是多少? –
爲什麼「UNDETERMINED」,200是偏移量,40是計數,它的工作原理是 –