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

จะเลือกผลรวมของค่าคอลัมน์ที่มีมูลค่าสูงกว่าในแถวการเข้าถึงด้วย MySQL ได้อย่างไร


ใช้คำสั่ง CASE และกำหนดเงื่อนไขให้เหมือนกัน ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable -> ( -> X int, -> Y int -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.57 วินาที)

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

mysql> แทรกลงในค่า DemoTable (20,30) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า DemoTable (40,15); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรก ลงในค่า DemoTable (80,85); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.13 วินาที)

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

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

ผลลัพธ์

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

<ก่อนหน้า>+------+------+| X | Y |+------+------+| 20 | 30 || 40 | 15 || 80 | 85 |+------+------+3 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อเลือกผลรวมของค่าคอลัมน์ที่มีค่าสูงกว่าในแต่ละแถว

mysql> SELECT SUM (กรณีที่ X> Y แล้ว X ELSE Y END) จาก DemoTable

ผลลัพธ์

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

<ก่อนหน้า>+--------------------------------------+| SUM(กรณีที่ X> Y แล้ว X ELSE Y END) |+----------------------------------- -----+| 155 |+---------------------------------------------------+1 แถวในชุด (0.00 วินาที)