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

ดึงคะแนนสูงสุดสำหรับนักเรียนที่มีเครื่องหมาย 1 และ 2 ระเบียนใน MySQL หรือไม่


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

mysql> สร้างตาราง DemoTable -> ( -> StudentEmailId varchar(20), -> Marks1 int, -> Marks2 int-> );แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.90 วินาที)

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

mysql> แทรกลงในค่า DemoTable ('[email protected]',45,32); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.30 วินาที)mysql> แทรกลงในค่า DemoTable ('[email protected]', 32, 45); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.34 วินาที) mysql> แทรกลงในค่า DemoTable ('[email protected]', 32,45); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (1.64 วินาที) mysql> แทรกลงในค่า DemoTable ( '[email protected]',45,32);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.18 วินาที)

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

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

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

<ก่อนหน้า>+-----------------------------+-------+| StudentEmailId | Marks1 | Marks2 |+-----------------+---------+-------+| [email protected] | 45 | 32 || [email protected] | 32 | 45 || [email protected] | 32 | 45 || [email protected] | 45 | 32 |+-----------------+---------+-------+4 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อดึงคะแนนสูงสุดของแต่ละบุคคลสำหรับนักเรียนที่มีเครื่องหมาย 1 และ 2 ระเบียน -

mysql> เลือก StudentEmailId,max(Marks1),max(Marks2) จาก DemoTable -> group โดย StudentEmailId;

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

<ก่อนหน้า>+-----------+-------------+-------------+ | StudentEmailId | max(Marks1) | สูงสุด(Marks2) |+-----------+-------------+----------- -+| [email protected] | 45 | 45 || [email protected] | 32 | 45 || [email protected] | 45 | 32 |+----------+-------------+-------------+3 แถวในชุด (0.00 วินาที)