Số lượng MySQL không NULL

Hàm MySQL COUNT() cung cấp một số bản ghi trong tập kết quả từ một bảng khi câu lệnh SQL SELECT được thực thi. Hàm này không đếm các giá trị NULL. Hàm đếm cho giá trị BIGINT. Hàm tổng hợp này trả về tất cả các hàng hoặc chỉ những hàng khớp với các điều kiện đã chỉ định và nếu không có hàng nào khớp thì nó trả về 0. Ở đây, Hàm tổng hợp là một hàm tính toán một số giá trị và chỉ trả về một giá trị duy nhất. Chúng ta có thể sử dụng COUNT() theo nhiều cách nhưng điều cần thiết là hiểu cách thức hoạt động của nó. Chúng tôi có thể nhận được các giá trị kết quả khác nhau tùy theo cách chúng tôi sử dụng nó

cú pháp

Cú pháp cơ bản cho hàm đếm là

Bắt đầu khóa học khoa học dữ liệu miễn phí của bạn

Hadoop, Khoa học dữ liệu, Thống kê và những thứ khác

Gói khoa học dữ liệu tất cả trong một(360+ khóa học, hơn 50 dự án)

Số lượng MySQL không NULL
Số lượng MySQL không NULL
Số lượng MySQL không NULL
Số lượng MySQL không NULL

Số lượng MySQL không NULL
Số lượng MySQL không NULL
Số lượng MySQL không NULL
Số lượng MySQL không NULL

Giá
Xem khóa học

360+ Khóa học trực tuyến. hơn 50 dự án. Hơn 1500 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập Trọn đời
4. 7 (84.904 xếp hạng)

COUNT(*)
COUNT(expression)
COUNT( [DISTINCT] expression )

Giải trình. Hàm có ba dạng được giải thích như sau

  • hàm đếm(*). Nó trả về tất cả số lượng hàng trong một bảng được trả về bởi truy vấn SELECT bao gồm các hàng không NULL, NULL và trùng lặp từ bảng

Ghi chú. * biểu thị 'tất cả'

  • hàm COUNT(biểu thức). Nó cung cấp kết quả của biểu thức đếm số hàng không có giá trị NULL
  • COUNT(biểu thức DISTINCT). Nó dẫn đến số hàng chứa giá trị khác biệt NULL trong tập kết quả được trả về bởi câu lệnh SELECT

Hàm COUNT() hoạt động như thế nào trong MySQL?

Đếm là một hàm tổng hợp trả về một kết quả ngắn gọn duy nhất hoạt động trên toàn bộ tập hợp các hàng trong một bảng

Có các bảng khác nhau được lưu trữ trong Cơ sở dữ liệu với các kích thước và số lượng hàng khác nhau. Chúng ta có thể tìm thấy hàng triệu bản ghi hoặc nhiều hơn trong các bảng như bảng giao dịch. Do đó, việc theo dõi tiến trình của các bảng và đếm số lượng bản ghi trở thành một yếu tố rất quan trọng trong quá trình phát triển và vận hành.

Các ví dụ để triển khai MySQL Count()

Giả sử chúng ta có một bảng có tên là Khách hàng làm mẫu

Số lượng MySQL không NULL

Ghi chú. Trong SQL, tất cả các truy vấn không phân biệt chữ hoa chữ thường

Ví dụ 1

Nếu chúng ta sử dụng hàm COUNT(biểu thức) của MySQL để lấy tất cả các bản ghi từ bảng bằng cách sử dụng một giá trị biểu thức không chứa giá trị NULL. Truy vấn SQL là

Mã số

SELECT COUNT(City) FROM Customers;

đầu ra

Số lượng MySQL không NULL

Ví dụ #2

Đối với cùng một bảng, chúng ta hãy sử dụng hàm MySQLCOUNT(*). Giả sử chúng ta đã thực hiện câu lệnh sau

Mã số

SELECT COUNT(*) FROM Customers;

đầu ra

Số lượng MySQL không NULL

Giải trình. Hàm đếm này sẽ trả về số lượng hàng từ tập kết quả có thể chứa hoặc không chứa giá trị NULL

Ví dụ #3

Bây giờ chúng ta sẽ thảo luận về onMySQLCOUNT(biểu thức DISTINCT)

Mã số

SELECT COUNT(DISTINCT City) FROM Customers;

đầu ra

Số lượng MySQL không NULL

Giải trình. Sau đó, hàm này, từ khóa DISTINCT sẽ hiển thị số lượng bản ghi là duy nhất, không trùng lặp hoặc lặp lại và các giá trị không phải là NULL

Ví dụ #4

Bây giờ, chúng ta cũng có thể sử dụng hàm Count như MySQL COUNT() này với GROUP BY. Với số lượng () chúng ta có thể sử dụng mệnh đề GROUP BY SQL để nó cung cấp số lượng bản ghi bên trong một nhóm

Mã số

SELECT City, COUNT(*) FROM Customers GROUP BY City;

đầu ra

Số lượng MySQL không NULL

Giải trình. Trong ví dụ trên, đếm() với từ khóa GROUP BY nhóm tất cả các thành phố riêng biệt và trả về số lượng của từng thành phố

Ví dụ #5

Chúng ta cũng có thể sử dụng MySQL Count() với Mệnh đề HAVING trong câu lệnh MySQL. Trong ví dụ trên, chúng ta có thể thêm mệnh đề Có để lọc thêm kết quả từ truy vấn trên

Mã số

SELECT City, COUNT(*) FROM Customers GROUP BY City HAVING COUNT(*) >1;

đầu ra

Số lượng MySQL không NULL

Giải trình. Ở đây, chúng tôi đã thêm số lượng () với mệnh đề HAVING dẫn đến số lượng bản ghi từ bảng Khách hàng NHÓM THEO Thành phố có số lượng lớn hơn 1. Trường giá trị NULL cũng được tính

Ví dụ #6

Hàm Count() có thể được kết hợp với các hàm Điều khiển luồng Bạn có thể kết hợp hàm Count() với các hàm điều khiển luồng để đạt được chức năng tốt hơn

Ví dụ: hàm điều khiển luồng IF() có thể được sử dụng với biểu thức sẽ được sử dụng cho hàm Count() trong Câu lệnh SQL. Điều này sẽ khá hỗ trợ để đưa ra phân tích nhanh dữ liệu bên trong cơ sở dữ liệu. Chúng ta hãy xem xét dữ liệu từ một bảng có tên Sản phẩm với ba trường ProductID, ProductName, Price, v.v.

Số lượng MySQL không NULL

Đây, là một trường có tên là Giá trong bảng và mỗi sản phẩm có các mức giá khác nhau được ghi trong hàng đó. Vì vậy, chúng ta có thể sử dụng trường Giá này để thực hiện truy vấn sau với hàm COUNT() và IF() trong câu lệnh SQL để trả về kết quả đếm

Mã số

SELECT
COUNT(IF(Price <=10,1,NULL)) 'Low',
COUNT(IF(Price BETWEEN 10 AND 30,1,NULL)) 'Medium',
COUNT(IF(Price > 30,1,NULL)) 'High'
FROM Products;

đầu ra

Số lượng MySQL không NULL

Giải trình. Từ tuyên bố trên, chúng ta có thể thấy rằng trên cơ sở Giá trong bảng Sản phẩm, chúng tôi đã chia chúng thành ba nhóm có tên là Thấp, Trung bình và Cao. Ở đây chúng ta sử dụng hàm IF() kết hợp với hàm count() để so sánh các mức giá khác nhau của các sản phẩm với điều kiện cho trước và khi điều kiện khớp thì trả về kết quả như trên, trong đó số đếm cho 3 nhóm; . Nếu không khớp với một điều kiện thì nó sẽ trả về giá trị NULL có nghĩa là 0

Ví dụ #7

Chúng ta thậm chí có thể sử dụng toán tử UNION với hàm COUNT để lấy số lượng hàng của MySQL từ hai bảng trở lên. Sử dụng UNION, chúng ta có thể hợp nhất các tập kết quả thu được từ mọi câu lệnh SELECT riêng lẻ và áp dụng số đếm để lấy số lượng hàng của nhiều bảng trong cơ sở dữ liệu

Ví dụ: chúng tôi đã thực hiện một truy vấn SQL bên dưới để trả về số lượng hàng của hai bảng Khách hàng và Sản phẩm từ cơ sở dữ liệu mẫu của chúng tôi

Mã số

SELECT     'Customers' tablename,   COUNT(*) rows FROM   Customers
UNION
SELECT     'Products' tablename,   COUNT(*) rows FROM  Products;

đầu ra

Số lượng MySQL không NULL

________số 8

Số lượng MySQL không NULL

Ví dụ #8

Chúng ta có thể sử dụng hàm COUNT() kết hợp với mệnh đề WHERE trong truy vấn câu lệnh SELECT nếu muốn đếm một số hàng của bảng. Tại đây, số lượng biểu thức được xác định trong hàm đếm sẽ được trả về từ bảng dựa trên tiêu chí cụ thể của mệnh đề WHERE trong truy vấn SELECT. Hãy để chúng tôi lấy bảng Sản phẩm trước

Mã số

SELECT COUNT(ProductName) FROM Products WHERE SupplierID = 1;

đầu ra

Số lượng MySQL không NULL

Phần kết luận

Hàm COUNT trong MySQL có thể nói là hàm đơn giản nhất và rất có lợi cho việc đếm số hàng trong một bảng thỏa mãn điều kiện nhất định với việc thực thi câu lệnh SELECT. Trong bài viết này, chúng ta cũng đã học cách trả về số lượng hàng không phải NULL từ một hoặc nhiều bảng trong Cơ sở dữ liệu MySQL bằng cách sử dụng các mệnh đề và toán tử MySQL khác nhau với cú pháp và ví dụ

Bài viết được đề xuất

Đây là hướng dẫn về số lượng MySQL (). Ở đây chúng tôi thảo luận về phần giới thiệu về số lượng MySQL () với Cú pháp thích hợp, hoạt động và các ví dụ tương ứng để hiểu rõ hơn. Bạn cũng có thể xem qua các bài viết liên quan khác của chúng tôi để tìm hiểu thêm –

Làm cách nào để đếm các giá trị không null trong MySQL?

Để đếm tất cả các giá trị khác null cho một cột, giả sử col1 , bạn chỉ cần sử dụng count(col1) as cnt_col1 . Tuy nhiên, để rõ ràng hơn, bạn có thể sử dụng hàm sum() và toán tử IS NOT NULL, trở thành sum(col1 IS NOT NULL).

Count() có bỏ qua NULL không?

COUNT(biểu thức) trả về số lượng giá trị trong biểu thức, là tên cột của bảng hoặc biểu thức đánh giá một cột dữ liệu. COUNT(biểu thức) không tính giá trị NULL . Truy vấn này trả về số giá trị không phải NULL trong cột Tên của Mẫu.

Tính trong MySQL có tính giá trị NULL không?

Hàm COUNT() trả về số lượng bản ghi được trả về bởi một truy vấn chọn. Ghi chú. Giá trị NULL không được tính

Số đếm (*) có tính NULL không?

Như bạn đã học, hàm COUNT(*) sẽ đếm tất cả các hàng trong bảng, bao gồm cả giá trị NULL. Mặt khác, COUNT(tên cột) sẽ đếm tất cả các hàng trong cột được chỉ định trong khi loại trừ các giá trị NULL