SQL có sẵn lệnh để đếm các dòng trong CSDL.
Cú pháp của hàm
COUNT
:SELECT COUNT(tên_cột) FROM tên_bảng
Hàm
COUNT
(*):
Hàm
COUNT
(*) trả về số lượng các dòng được chọn ở trong bảng.
Ví dụ ta có bảng Persons như sau:
Name | Age |
---|---|
Hansen, Ola | 34 |
Svendson, Tove | 45 |
Pettersen, Kari | 19 |
Câu lệnh sau sẽ trả về số lượng các dòng trong bảng:
SELECT COUNT(*) FROM Persons
và kết quả trả về sẽ là:
3
Câu lệnh sau sẽ trả về số lượng những người lớn hơn 20 tuổi:
SELECT COUNT(*) FROM Persons WHERE Age > 20
kết quả trả về sẽ là:
2
Hàm
COUNT
(column):
Hàm
COUNT
(column) sẽ trả về số lượng các dòng có giá trị khác NULL
ở cột được chỉ định.
Ví dụ ta có bảng Persons như sau:
Name | Age |
---|---|
Hansen, Ola | 34 |
Svendson, Tove | 45 |
Pettersen, Kari |
Câu lệnh sau sẽ trả về số lượng những người mà cột Age trong bảng không rỗng:
SELECT COUNT(Age) FROM Persons
và kết quả trả về sẽ là:
2
Mệnh đề
COUNT DISTINCT
Lưu ý: Các ví dụ dưới đây chỉ hoạt động với CSDL Oracle và MS SQL Server, không hoạt động trên MS Access (chưa thử nhiệm với các hệ CSDL khác!)
Từ khoá DISTINCT và COUNT có thể được dùng chung với nhau để đếm số lượng các kết quả không trùng nhau.
Cú pháp như sau:
SELECT COUNT(DISTINCT column(s)) FROM table
Ví dụ ta có bảng Orders như sau:
Company | OrderNumber |
---|---|
Sega | 3412 |
W3Schools | 2312 |
Trio | 4678 |
W3Schools | 6798 |
Câu lệnh SQL sau:
SELECT COUNT(DISTINCT Company) FROM Orders
sẽ trả về kết quả là:
3
0 nhận xét:
Post a Comment