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

นับค่าที่มากกว่าและน้อยกว่าจำนวนที่ระบุและจำนวนที่แสดงในคอลัมน์ MySQL แยกกัน?


สำหรับสิ่งนี้ คุณสามารถใช้ COUNT() ร่วมกับ CASE STATEMENT ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable (คะแนน int); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.71 วินาที)

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

mysql> แทรกลงในค่า DemoTable (40); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.77 วินาที) mysql> แทรกลงในค่า DemoTable (48); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า DemoTable ( 59); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DemoTable (33); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable (38); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.09 วินาที) mysql> แทรกลงในค่า DemoTable (89); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า DemoTable (35); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที)

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

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

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

<ก่อนหน้า>+-------+| คะแนน |+-------+| 40 || 48 || 59 || 33 || 38 || 89 || 35 |+-------+7 แถวในชุด (0.00 วินาที)

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

mysql> เลือกการนับ (กรณีที่คะแนน> 45 และสิ้นสุด 1) เป็น CountOfValueGreaterThan45 นับ (กรณีที่คะแนน <=45 แล้วจบ 1 ครั้ง) เป็น CountOfValueLessThanOrEqualTo45 จาก DemoTable

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

<ก่อนหน้า>+---------------------------+----------------- ---------------+| CountOfValueGreaterThan45 | CountOfValueLessThanOrEqualTo45 |+--------------------------+------------------- --------------+| 3 | 4 |+--------------------------+------------------- --------------+1 แถวในชุด (0.00 วินาที)