MySQL LIMIT 2 मान लेता है, ऑफ़सेट और रोकाउंट। इनमें हेरफेर करने से आप निश्चित रूप से पेजिंग कैसे कर सकते हैं।
उदाहरण के लिए यदि कहें कि प्रत्येक पृष्ठ 10 रिकॉर्ड लंबा था। पृष्ठ1 =LIMIT 0, 10
पेज 2 =LIMIT 10, 10
पेज3 =LIMIT 20, 10
आदि.
IOW:LIMIT (pageNo - 1) * PageSize, PageSize
अब सीमा का उपयोग करने के साथ एक समस्या यह है कि रिकॉर्ड गणना परिणामसेट के लिए है, IOW:सीमित 10 रिकॉर्ड।
लेकिन आप क्या कर सकते हैं MySQL से स्टोर करने के लिए कहें कि अगर LIMIT लागू नहीं किया गया तो रिकॉर्डकाउंट क्या होगा। आप SQL को SQL_CALC_FOUND_ROWS के साथ उपसर्ग करके इसे पुनः प्राप्त कर सकते हैं।
उदाहरण के लिए SELECT SQL_CALC_FOUND_ROWS * FROM TABLE WHERE something LIMIT 10, 10
फिर आप एक और क्वेरी कर सकते हैं जो इस मान को पुनः प्राप्त करती है।
SELECT FOUND_ROWS();