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

แบบสอบถาม MySQL เพื่อค้นหาคะแนนสูงสุดสองอันดับแรก


สำหรับสิ่งนี้ ให้ใช้ฟังก์ชันรวม MAX() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1383 -> ( -> Id int, -> PlayerScore int -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.90 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable1383 (200,78); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DemoTable1383 (200,89); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> ลงในค่า DemoTable1383 (200,89); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DemoTable1383 (200,87); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.29 วินาที) mysql> แทรกลงในค่า DemoTable1383 (203, 97); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable1383 (200,57); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที)

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

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

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

<ก่อนหน้า>+------+-------------+| รหัส | คะแนนผู้เล่น |+------+-------------+| 200 | 78 || 200 | 89 || 200 | 89 || 200 | 87 || 203 | 97 || 200 | 57 |+------+-------------+6 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อค้นหาคะแนนสูงสุดและแสดงค่าที่แตกต่าง -

mysql> เลือก Id,max(PlayerScore) จากกลุ่ม DemoTable1383 โดยเรียงรหัสตาม max (PlayerScore) DESC;

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

<ก่อนหน้า>+------+-----------------+| รหัส | max(PlayerScore) |+------+-----------------+| 203 | 97 || 200 | 89 |+------+-----------------+2 แถวในชุด (0.00 วินาที)