SQL Function COUNT()

COUNT() ฟังก์ชันส่งกลับจำนวนบันทึกที่ตรงกับเงื่อนไขที่กำหนด:

SQL COUNT() ศัพท์ทางภาษา SQL

SQL COUNT(column_name) ศัพท์ทางภาษา SQL

COUNT(column_name) ฟังก์ชันส่งกลับจำนวนค่าของคอลัมน์ที่กำหนด (NULL ไม่นับ):

SELECT COUNT(column_name) FROM table_name

SQL COUNT(*) ศัพท์ทางภาษา SQL

COUNT(*) ฟังก์ชันส่งกลับจำนวนบันทึกในตาราง:

SELECT COUNT(*) FROM table_name

SQL COUNT(DISTINCT column_name) ศัพท์ทางภาษา SQL

COUNT(DISTINCT column_name) ฟังก์ชันส่งกลับจำนวนค่าที่แตกต่างของคอลัมน์ที่กำหนด:

SELECT COUNT(DISTINCT column_name) FROM table_name

หมายเหตุ:COUNT(DISTINCT) สำหรับ ORACLE และ Microsoft SQL Server แต่ไม่สามารถใช้งานได้ใน Microsoft Access。

ตัวอย่าง SQL COUNT(column_name)

เรามีตาราง "Orders" ต่อไปนี้:

O_Id OrderDate OrderPrice Customer
1 2008/12/29 1000 Bush
2 2008/11/23 1600 Carter
3 2008/10/05 700 Bush
4 2008/09/28 300 Bush
5 2008/08/06 2000 Adams
6 2008/07/21 100 Carter

ตอนนี้ เราต้องการคำนวณจำนวนรายการสั่งซื้อของลูกค้า "Carter"

เราใช้คำสั่ง SQL ต่อไปนี้:

SELECT COUNT(Customer) AS CustomerNilsen FROM Orders
WHERE Customer='Carter'

ผลลัพธ์ของคำสั่ง SQL ข้างต้นคือ 2 เพราะลูกค้า Carter มีรายการสั่งซื้อ 2 ราย:

CustomerNilsen
2

ตัวอย่าง SQL COUNT(*)

หากเราละเลย WHERE คำสั่ง อย่างเช่น:

SELECT COUNT(*) AS NumberOfOrders FROM Orders

ผลลัพธ์ชุดเหมือนนี้:

NumberOfOrders
6

นี่คือจำนวนบรรทัดทั้งหมดในตาราง

ตัวอย่าง SQL COUNT(DISTINCT column_name)

ตอนนี้ เราต้องการคำนวณจำนวนลูกค้าที่แตกต่างกันในตาราง "Orders"

เราใช้คำสั่ง SQL ต่อไปนี้:

SELECT COUNT(DISTINCT Customer) AS NumberOfCustomers FROM Orders

ผลลัพธ์ชุดเหมือนนี้:

NumberOfCustomers
3

นี่คือจำนวนลูกค้าที่แตกต่างกันในตาราง "Orders" (Bush, Carter และ Adams)