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

คำนวณเปอร์เซ็นต์ผู้ใช้ที่เกิดระหว่างปี 1980-1996 ใน MySQL

ใช้ SUM(condition) * 100 / COUNT(*) คำนวณเปอร์เซ็นต์ในคำสั่งเดียว

สร้างตารางตัวอย่าง

mysql> CREATE TABLE DemoTable (
    -> DateOfBirth VARCHAR(100)
    -> );

เพิ่มข้อมูลตัวอย่าง

mysql> INSERT INTO DemoTable VALUES('2019/01/31');
mysql> INSERT INTO DemoTable VALUES('1980/02/01');
mysql> INSERT INTO DemoTable VALUES('1985/04/10');
mysql> INSERT INTO DemoTable VALUES('1995/06/04');
mysql> INSERT INTO DemoTable VALUES('1990/12/24');
mysql> INSERT INTO DemoTable VALUES('1996/11/04');

แสดงข้อมูล

mysql> SELECT * FROM DemoTable;

ผลลัพธ์:

+-------------+
| DateOfBirth |
+-------------+
| 2019/01/31  |
| 1980/02/01  |
| 1985/04/10  |
| 1995/06/04  |
| 1990/12/24  |
| 1996/11/04  |
+-------------+

คำสั่งคำนวณเปอร์เซ็นต์เกิดระหว่าง 1980-1996

mysql> SELECT SUM(DateOfBirth BETWEEN '1980/01/01' AND '1996/12/31') * 100 / COUNT(*) AS Percentage FROM DemoTable;

ผลลัพธ์:

+------------+
| Percentage |
+------------+
| 83.3333    |
+------------+

คำอธิบาย: DateOfBirth BETWEEN ... คืนค่า 1 (จริง) หรือ 0 (เท็จ) | SUM() รวมค่า 1 = จำนวนที่ตรงเงื่อนไข | * 100 / COUNT(*) = เปอร์เซ็นต์