antshome (งานต้นฉบับ) เผยแพร่ครั้งแรก: CSDN
จัดทำเพจฐานข้อมูลด้วยคำสั่งเดียว
เลือก 10 อันดับแรก b.* จาก (เลือกฟิลด์คีย์หลัก 20 อันดับแรก ฟิลด์เรียงลำดับจากลำดับชื่อตารางโดยการเรียงลำดับฟิลด์ desc) a, ชื่อตาราง b โดยที่ b ฟิลด์คีย์ = ก. ลำดับฟิลด์คีย์หลักโดย ก. ฟิลด์การเรียงลำดับ
10 = จำนวนเรคคอร์ดต่อหน้า
20 = (หน้าปัจจุบัน + 1) * จำนวนเรคคอร์ดต่อหน้า
หรือคำสั่งเพิ่มเติมสามารถบรรลุเพจได้ แต่ผลลัพธ์สุดท้ายจะถูกจัดเรียงออก โดยเรียงลำดับจากน้อยไปหามาก หากจำเป็นต้องใช้ชุดผลลัพธ์จะเรียงลำดับจากมากไปน้อย (เช่น เวลา) มีสองวิธีในการจัดการกับมัน
1. ใช้คำสั่งต่อไปนี้ แต่ประสิทธิภาพอาจต่ำกว่า
เลือก * จากตาราง name b, (เลือกฟิลด์คีย์หลัก 10 อันดับแรก, ฟิลด์เรียงลำดับจาก (เลือกฟิลด์คีย์หลัก 20 อันดับแรก, ฟิลด์เรียงลำดับจากชื่อตารางเรียงตามฟิลด์เรียงลำดับ) เรียงลำดับตามฟิลด์เรียงลำดับ) c โดยที่ b. ฟิลด์คีย์หลัก ลำดับฟิลด์คีย์โดย c. เรียงลำดับฟิลด์ desc
2. ดำเนินการใน ADO ย้ายเคอร์เซอร์ชุดระเบียนไปที่จุดสิ้นสุดแล้วเลื่อนไปข้างหน้า
''ต่อไปนี้คือ
ชุดตัวอย่าง asp rsTemp = Server.CreateObject("adodb.recordset")
คำสั่ง rsTemp.Open,conn,1,1
rsTemp.MoveLast
สำหรับ i = 1 ถึง rsTemp.RecordCount
'Value....
rsTemp.MovePrevious
ถัดไป
หลังจากการทดสอบ วิธีการเพจข้างต้นจะเร็วกว่าการใช้ตารางชั่วคราว และใช้งานง่าย