Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เลือกผลลัพธ์จากตรงกลางของรายการที่เรียงลำดับใน MySQL?


ในการเลือกผลลัพธ์จากตรงกลางของรายการที่จัดเรียง ให้ใช้คำสั่ง ORDER BY ร่วมกับ LIMIT

ให้เราสร้างตารางก่อน ต่อไปนี้เป็นแบบสอบถาม -

mysql> สร้างตาราง sortedListDemo -> ( -> Id int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> StudentName varchar(100) -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.46 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อแทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก -

mysql> แทรกลงในค่า sortedListDemo(StudentName) ('John'); เคียวรีตกลง 1 แถวได้รับผลกระทบ (0.62 วินาที)mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('Sam'); เคียวรีตกลง 1 แถวได้รับผลกระทบ ( 0.18 วินาที) mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('Adam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('James'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.21 วินาที) mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('Jace'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('Mike'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.12 วินาที) mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('Carol'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('Bob'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.17 วินาที) mysql> แทรกลงในค่า sortedListDemo (StudentName) ('Ramit'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('Chris'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.21 วินาที) mysql> แทรกลงใน sort edListDemo(StudentName) values('Robert');Query OK, 1 แถวได้รับผลกระทบ (0.14 วินาที)mysql> แทรกลงใน sortedListDemo (StudentName) ค่า ('David');Query OK, 1 แถวได้รับผลกระทบ (0.21 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก * จาก sortedListDemo;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+----+-------------+| รหัส | ชื่อนักเรียน |+---+-------------+| 1 | จอห์น || 2 | แซม || 3 | อดัม || 4 | เจมส์ || 5 | เจซ || 6 | ไมค์ || 7 | แครอล || 8 | บ๊อบ || 9 | รมิท || 10 | คริส || 11 | โรเบิร์ต || 12 | David |+----+-------------+12 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อเลือกผลลัพธ์จากตรงกลางของรายการที่เรียงลำดับ เราได้ตั้งค่า LIMIT เป็น 4, 6 ซึ่งหมายความว่า 6 รายการจะแสดงแบบสุ่ม -

mysql> เลือก *จาก sortedListDemo -> เรียงลำดับตามชื่อนักเรียน -> LIMIT 4,6;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+----+-------------+| รหัส | ชื่อนักเรียน |+---+-------------+| 12 | เดวิด || 5 | เจซ || 4 | เจมส์ || 1 | จอห์น || 6 | ไมค์ || 9 | Ramit |+----+--------------------+6 แถวในชุด (0.00 วินาที)