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

รับอายุสูงสุดจากบันทึกที่มีชื่อนักเรียนที่คล้ายกันใน MySQL


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

mysql> สร้างตาราง DemoTable1964 ( StudentName varchar(20), StudentAge int );Query OK, 0 แถวได้รับผลกระทบ (0.00 วินาที)

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

mysql> แทรกลงในค่า DemoTable1964 ('Chris', 23); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1964 ('David', 34); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) )mysql> แทรกลงในค่า DemoTable1964 ('Chris',27); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1964 ('Sam', 31); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1964 ('David',32); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1964 ('David',37); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.00 วินาที)

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

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

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

<ก่อนหน้า>+-------------+-----------+| ชื่อนักเรียน | StudentAge |+-------------+-----------+| คริส | 23 || เดวิด | 34 || คริส | 27 || แซม | 31 || เดวิด | 32 || เดวิด | 37 |+-------------+-----------+6 แถวในชุด (0.00 วินาที)

นี่คือข้อความค้นหาเพื่อให้ได้อายุสูงสุด:

mysql> เลือก StudentName,max(StudentAge) จากกลุ่ม DemoTable1964 โดย StudentName;

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

<ก่อนหน้า>+-------------+-----------------+| ชื่อนักเรียน | max(StudentAge) |+--------------------------+-----------------+| คริส | 27 || เดวิด | 37 || แซม | 31 |+-------------+-----------------+3 แถวในชุด (0.00 วินาที)