5
เรียกใช้แบบสอบถามด้วย LIMIT / OFFSET และรับจำนวนแถวทั้งหมด
เพื่อจุดประสงค์ในการแบ่งหน้าฉันต้องการเรียกใช้แบบสอบถามที่มีLIMITและOFFSETอนุประโยค แต่ฉันยังต้องการจำนวนแถวที่จะถูกส่งคืนโดยแบบสอบถามนั้นโดยไม่มีLIMITและส่วนOFFSETคำสั่ง ฉันต้องการวิ่ง: SELECT * FROM table WHERE /* whatever */ ORDER BY col1 LIMIT ? OFFSET ? และ: SELECT COUNT(*) FROM table WHERE /* whatever */ ในเวลาเดียวกัน. มีวิธีดำเนินการโดยเฉพาะอย่างยิ่งวิธีที่ช่วยให้ Postgres ปรับให้เหมาะสมเพื่อให้ทำงานได้เร็วกว่าการทำงานทั้งสองอย่างทีละรายการ