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

จะคำนวณค่าจากหลายคอลัมน์ใน MySQL ได้อย่างไร


ในการคำนวณค่าจากหลายคอลัมน์ ให้ใช้ GROUP BY ต่อไปนี้เป็นไวยากรณ์ -

เลือก yourColumnName1,sum(yourColumnName2*yourColumnName3) AS anyAliasName from yourTableName group by yourColumnName1;

ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง calcValueDemo -> ( -> Id int, -> ProductPrice int, -> ProductWeight int -> );Query OK, 0 แถวได้รับผลกระทบ (0.56 วินาที)

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

mysql> แทรกลงในค่า calcValueDemo (100,35,5); เคียวรีตกลง, 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> แทรกลงในค่า calcValueDemo (101,50,3); เคียวรีตกลง, 1 แถวได้รับผลกระทบ (0.16 วินาที )mysql> แทรกลงในค่า calcValueDemo (100,100,4); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า calueDemo (101,500,2); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.22 วินาที)

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

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

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

<ก่อนหน้า>+------+--------------+--------------+| รหัส | สินค้าราคา | น้ำหนักผลิตภัณฑ์ |+------+--------------+--------------+| 100 | 35 | 5 || 101 | 50 | 3 || 100 | 100 | 4 || 101 | 500 | 2 |+------+-------------+--------------+4 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อคำนวณค่าจากหลายคอลัมน์ -

mysql> เลือก Id,sum(ProductPrice*ProductWeight) AS Total จาก calcValueDemo groupby Id;

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

<ก่อนหน้า>+------+-------+| รหัส | รวม |+------+-------+| 100 | 575 || 101 | 1150 |+------+-------+2 แถวในชุด (0.00 วินาที)