-
Thiết lập ban đầu
-
Các khái niệm cơ bản
-
Nhóm Truy vấn dữ liệu với SELECT
-
Nhóm thao tác dữ liệu
-
Các nhóm hàm xử lý
-
Hàm trong SQL
-
Các thao tác mở rộng
-
TÀI LIỆU THAM KHẢO CHO LẬP TRÌNH ABAP
Hàm đếm COUNT trong SQL
Hàm đếm COUNT trong SQL
Giới thiệu
Trong chương này, chúng ta đã học cách sử dụng câu lệnh SQL COUNT với nhiều tùy chọn khác nhau.
Câu lệnh SQL COUNT
Câu lệnh này được sử dụng để trả về số mục được tìm thấy trong một nhóm. Đếm hoạt động giống như hàm COUNT_BIG. Các câu lệnh này chỉ khác nhau về kiểu dữ liệu của các giá trị trả về của chúng. Đếm luôn trả về một giá trị kiểu dữ liệu int. COUNT_BIG luôn trả về giá trị kiểu dữ liệu bigint.
Hàm Count() trả về số hàng trong một bảng thỏa mãn tiêu chí được chỉ định trong mệnh đề WHERE. Nó đặt số lượng hàng hoặc giá trị cột không NULL. Count() trả về 0 nếu không có hàng nào phù hợp.
Cú pháp
- SELECT COUNT(column_name)
- FROM table_name
- WHERE condition;
Ví dụ này là cú pháp tiêu chuẩn SQL 2019 ANSI chung. Nó giúp chúng ta hiểu cách mà Hàm SQL Count() được sử dụng. Các nhà cung cấp cơ sở dữ liệu khác nhau có thể có những cách áp dụng hàm Count() khác nhau.
Dưới đây, bạn có thể thấy rằng MySQL, PostgreSQL và Microsoft SQL Server tuân theo cùng một cú pháp như đã nêu ở trên, nhưng DB2 và Oracle hơi khác một chút.
Nhìn chung, bạn có thể sử dụng * hoặc ALL hoặc biểu thức riêng biệt hoặc một số biểu thức cùng với số lượng để đếm số lượng hàng cho một số điều kiện hoặc tất cả các hàng, tùy thuộc vào các đối số bạn đang sử dụng cùng với count().
Sử dụng câu lệnh Count và Distinct
Ví dụ này trả về số lượng tiêu đề khác nhau mà Sample trong OrderDetails có thể chứa.
Cú pháp
- SELECT COUNT(DISTINCT OrderName )
- FROM OrderDetails
- GO
Ví dụ
Ghi chú
Câu lệnh Count * được sử dụng cho Count(), tất cả các bản ghi (rows) được Count nếu một số nội dung NULL nhưng Count (column_name) không Count một bản ghi nếu trường của nó là NULL
Chọn câu lệnh Count (*)
Ví dụ này trả về tổng số chu kỳ Sample EmployeeDetail
Cú pháp
- SELECT COUNT(*)
- FROM EmployeeDetail;
- GO
Ví dụ
Sử dụng Count() với tên cột
Trong ví dụ này, hàm Count() trong SQL loại trừ các giá trị NULL cho một cột cụ thể nếu cột đó được chỉ định làm đối số trong dấu ngoặc đơn của hàm Count.
Cú pháp
- SELECT COUNT(OrderId)
- FROM OrderDetails ;
Ví dụ
Chọn Count (*) cho nhiều Table
Truy vấn sau đây đếm số lượng hàng từ hai bảng khác nhau (ở đây chúng tôi sử dụng EmployeeDetail và OrderDetails) bằng cách sử dụng lệnh Count(*).
Cú pháp
- SELECT(
- SELECT COUNT(*)
- FROM EmployeeDetail
- ) AS Total_Employees,
- (SELECT COUNT(*)
- FROM OrderDetails
- ) AS OrderName
- FROM OrderDetails
Ví dụ
Chọn Đếm (*) với các tập hợp khác
Ví dụ này cho thấy Count(*) hoạt động với các hàm tổng hợp khác trong danh sách Chọn. Ví dụ sử dụng cơ sở dữ liệu Sample.
Cú pháp
- SELECT COUNT(*),AVG(OrderId)
- FROM OrderDetails
- Where OrderId>5;
- GO
Ví dụ
Sử dụng mệnh đề over a trong câu lệnh
Ví dụ này sử dụng các hàm Min, Max, Avg và Count với mệnh đề Over để trả về các giá trị tổng hợp cho từng bộ phận trong bảng OrderDetails của cơ sở dữ liệu mẫu.
Cú pháp
- SELECT DISTINCT OrderName
- , MIN(OrderId) OVER (PARTITION BY edh.OrderId) AS OrderDetails
- , MAX(EmpId) OVER (PARTITION BY edh.OrderId) AS EmployeeDetail
- , AVG( EmployeeID) OVER (PARTITION B edh.OrderId) class=“string”>“keyword”>AS EmployeeDetails
- ,COUNT(OrderId) OVER (PARTITION BY edh.OrderId) class=“keyword”>AS OrderDetails
- FROM EmployeeDetail AS eph
- JOIN EmployeeDetails AS edh
- ON eph.EmpId = edh.EmployeeID
- JOIN OrderDetails AS d
- ON d.OrderId = edh.EmployeeID
- WHERE edh.EmployeeID IS
- ORDER BY EmployeeName;
Ứng dụng của hàm Count()
Trong phần này, chúng ta đã thảo luận về cách áp dụng hàm đếm() với các mệnh đề SQL khác nhau cho các ứng dụng đó, chúng ta đã sử dụng phiên bản Oracle 10g express.
Trang Count with Distinct thảo luận cách áp dụng hàm đếm với riêng biệt và cũng thảo luận cách áp dụng hàm đếm với mệnh đề All. không giống như sử dụng *, khi tất cả được sử dụng, giá trị Null không được chọn.
Trang Count Having thảo luận về cách áp dụng hàm đếm với mệnh đề Having và group by.
Trang Count với Group by thảo luận về cách áp dụng hàm Count với Group By theo thứ tự tăng dần và giảm dần.
Bản tóm tắt
Trong chương này, chúng ta đã học cách sử dụng câu lệnh SQL DATE TIME với các tùy chọn khác nhau.
(Source: https://www.c-sharpcorner.com/)