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

เราจะนับค่าที่ไม่ซ้ำจำนวนหนึ่งในคอลัมน์ในตาราง MySQL ได้อย่างไร


โดยใช้คีย์เวิร์ด DISTINCT ร่วมกับชื่อคอลัมน์เป็นอาร์กิวเมนต์ของฟังก์ชัน COUNT() เราสามารถนับจำนวนค่าที่ไม่ซ้ำในคอลัมน์ได้ ไวยากรณ์มีดังนี้ −

SELECT COUNT(DISTINCT Col_name) FROM table_name;

ตัวอย่าง

สมมติว่าเรามีตารางต่อไปนี้

mysql> Select * from tender;
+----------+--------------+--------------+-------+
| clientid | client_Fname | Client_Lname | value |
+----------+--------------+--------------+-------+
|   100    | Mohan        | Kumar        | 60000 |
|   101    | Sohan        | Singh        | 50000 |
|   101    | Somil        | Rattan       | 55000 |
|   103    | Gaurav       | Kumar        | 75000 |
|   103    | Rahul        | Singh        | 63000 |
+----------+--------------+--------------+-------+
5 rows in set (0.00 sec)

ตอนนี้ถ้าเราต้องการนับจำนวนค่าที่ไม่ซ้ำทั้งหมดในคอลัมน์ชื่อ 'clientid' ก็สามารถทำได้ด้วยความช่วยเหลือของแบบสอบถามต่อไปนี้ -

mysql> Select COUNT(DISTINCT Clientid) from tender;
+--------------------------+
| COUNT(DISTINCT Clientid) |
+--------------------------+
|                        3 |
+--------------------------+
1 row in set (0.00 sec)

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

mysql> Select COUNT(DISTINCT Client_Lname) from tender;
+------------------------------+
| COUNT(DISTINCT Client_Lname) |
+------------------------------+
|                            3 |
+------------------------------+
1 row in set (0.00 sec)