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

แสดงผลรวมในแถวสุดท้ายของตารางโดยใช้ MySQL?


หากต้องการแสดงผลรวมในแถวสุดท้ายของตาราง คุณสามารถใช้ UNION เพื่อให้เข้าใจวิธีการ ให้เราสร้างตาราง

mysql> สร้างตาราง showSumInLastRowDemo -> ( -> StudentId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> StudentName varchar(20), -> StudentMarks int -> );Query OK, 0 แถวได้รับผลกระทบ (0.69 วินาที)

แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้ −

mysql> แทรกลงใน showSumInLastRowDemo(StudentName,StudentMarks) values('John',56);Query OK, 1 แถวได้รับผลกระทบ (0.14 วินาที)mysql> แทรกลงใน showSumInLastRowDemo(StudentName,StudentMarks) ค่า ('John',87);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที)mysql> แทรกลงใน showSumInLastRowDemo (StudentName,StudentMarks) ค่า ('John',52); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงใน showSumInLastRowDemo (StudentName,StudentMarks) ค่า ('Carol',97); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงใน showSumInLastRowDemo (StudentName, StudentMarks) ค่า ('Larry', 75); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า showSumInLastRowDemo (StudentName,StudentMarks) ('Larry',98); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า showSumInLastRowDemo (StudentName, StudentMarks) ('Carol', 73); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที)

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

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

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+-----------+-------------+--------------+| รหัสนักศึกษา | ชื่อนักเรียน | StudentMarks |+-----------+-------------+------------+| 1 | จอห์น | 56 || 2 | จอห์น | 87 || 3 | จอห์น | 52 || 4 | แครอล | 97 || 5 | แลร์รี่ | 75 || 6 | แลร์รี่ | 98 || 7 | แครอล | 73 |+-----------+-------------+--------------+7 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อแสดงผลรวมในแถวสุดท้ายของตารางโดยใช้ MySQL

mysql> (เลือก StudentName,StudentMarks จาก showSumInLastRowDemo) -> UNION -> (เลือก 'TotalMarksOfAllStudent' เป็น StudentName,sum(StudentMarks) StudentMarks จาก showSumInLastRowDemo);

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+-----------------------------+--------------+| ชื่อนักเรียน | StudentMarks |+--------------------------------------+-------------+| จอห์น | 56 || จอห์น | 87 || จอห์น | 52 || แครอล | 97 || แลร์รี่ | 75 || แลร์รี่ | 98 || แครอล | 73 || TotalMarksOfAllStudent | 538 |+----------------------------------+-------------+8 แถวในชุด (0.00 วินาที )