MySQL nhận số lượng hàng từ truy vấn

Count[] hàm đếm số hàng. Trong bài viết này, chúng ta sẽ nói về cách lấy số lượng hàng trong MySQL cho các yêu cầu khác nhau, đặc biệt là

Hãy để chúng tôi bắt đầu với việc tạo dữ liệu được sử dụng trên

  • Tạo bảng customer_sale_details
  • Chèn dữ liệu vào bảng customer_sale_details
  • Chọn từ customer_sale_details để xem dữ liệu
CREATE TABLE customer_sale_details [
    customer_id INT auto_increment,
    customer_name VARCHAR[255],
    no_products_purchased INT,
    date_of_purchase DATETIME,
    primary key [customer_id]
];
 INSERT INTO customer_sale_details [customer_name,no_products_purchased,date_of_purchase] 
 VALUES
 ["Henric",56,'2020-11-05 14:29:36'],
 ["Rasmus",23,'2020-12-06 15:29:36'], 
 ["Henry",2,'2020-12-12 14:30:36'],
 ["George",5,'2020-10-12 14:39:45'],
 ["Richa",45,'2021-01-01 13:29:26'],
 ["Ved",38, '2021-01-02 14:40:36'],
 ["Erick",200,'2021-01-02 12:30:30'],
 ["Mounika",12,'2020-10-05 11:19:36'],
 ["Tanya",15,'2019-11-05 12:31:31'],
 ["Abrahim",16,'2019-11-05 11:39:36'],
 ["Henric",139,'2021-01-07 10:10:16'],
 ["George",156,'2021-01-07 11:11:33'];
SELECT * FROM customer_sale_details;

đầu ra. -

hình1- customer_sale_details

Đếm số hàng của bảng

Trong phần này, chúng ta hãy xem cách lấy số hàng trong bảng. Quan sát truy vấn bên dưới để lấy số bản ghi trong bảng customer_sale_details.

SELECT COUNT[*] FROM customer_sale_details ;

đầu ra. -

quảng cáo

Hình 2

Kết quả này cho thấy bảng customer_sale_details có 12 hàng

Chọn số lượng hàng của một truy vấn

Trong phần này, chúng ta hãy xem cách lấy số hàng do truy vấn trả về. Truy vấn dưới đây là để lấy số lượng hàng từ bảng customer_sale_details trong đó customer_name = “George” .

SELECT count[*] FROM [SELECT * FROM customer_sale_details WHERE customer_name="George"] AS count_of_query;

đầu ra. -

hình 3

Kết quả cho thấy số hàng được trả về từ truy vấn là 2

Chọn số lượng hàng [riêng biệt]

Đôi khi có yêu cầu lấy số lượng giá trị riêng biệt trong truy vấn hoặc truy vấn phụ. Quan sát truy vấn bên dưới để  lấy tên khách hàng riêng biệt từ bảng customer_sale_details.

SELECT COUNT[DISTINCT customer_name] AS Customer_Names FROM customer_sale_details;

đầu ra. -

hinh 4

Chúng ta hãy lấy một ví dụ khác và quan sát truy vấn bên dưới để  lấy tên khách hàng riêng biệt từ bảng customer_sale_details đã mua ít hơn 100 sản phẩm.

SELECT COUNT[customer_name] FROM [
    SELECT DISTINCT customer_name FROM customer_sale_details  WHERE no_products_purchased  < 100
] AS customer_count;

đầu ra. -

hình 5

Chọn số lượng hàng NHÓM THEO

Khi được sử dụng với GROUP BY, hàm đếm[] sẽ lấy số lượng bản ghi được đặc trưng theo các nhóm khác nhau. Hãy để chúng tôi xem cách sử dụng GROUP BY với hàm đếm [] trong ví dụ dưới đây. Lấy số bản ghi được nhóm theo tên_khách_hàng.

SELECT 
    customer_name, COUNT[customer_name] AS records_per_customer
FROM
    customer_sale_details
GROUP BY customer_name

đầu ra. -

hình 6

MySQL chọn số lượng hàng từ tất cả các bảng

Phần này sẽ xem các cách khác nhau để đếm số lượng của tất cả các bảng trong lược đồ cơ sở dữ liệu

CÚ PHÁP. -

SELECT 
    TABLE_NAME, SUM[TABLE_ROWS] AS COUNT_OF_ROWS
FROM
    INFORMATION_SCHEMA.TABLES
WHERE
    TABLE_SCHEMA = 'Name of your schema'
GROUP BY TABLE_NAME;

Thí dụ. -

Truy vấn dưới đây sẽ nhận được số lượng của tất cả các bảng có trong lược đồ riti_sales_DB

SELECT 
    TABLE_NAME, SUM[TABLE_ROWS] AS COUNT_OF_ROWS
FROM
    INFORMATION_SCHEMA.TABLES
WHERE
    TABLE_SCHEMA = 'riti_sales_DB'
GROUP BY TABLE_NAME;

đầu ra. -

hình 7

Một cách khác để biết số lượng của tất cả các bảng là bằng cách HIỂN THỊ TRẠNG THÁI

________số 8

SHOW STATUS, cùng với các thông tin khác, cũng sẽ nhận được số hàng trong mỗi bảng, như thể hiện trong hình 8

I may indeed be the only one ever to encounter this - however if you have a myisam table with one row, and you search with valid table and column name for a result where you might expect 0 rows, you will not get 0, you will get 1, which is the myisam optimised response when a table has 0 or one rows.  Under "5.2.4 How MySQL Optimises WHERE Clauses" it reads:

SELECT COUNT[*] FROM customer_sale_details ;
0

SELECT COUNT[*] FROM customer_sale_details ;
1

SELECT COUNT[*] FROM customer_sale_details ;
2

SELECT COUNT[*] FROM customer_sale_details ;
3

Làm cách nào tôi có thể nhận được tổng số hàng trong MySQL?

Để lấy tổng số hàng trong cơ sở dữ liệu MySQL, bạn có thể sử dụng hàm tổng hợp SUM[] cùng với cột có sẵn TABLE_ROWS từ INFORMATION_SCHEMA. BẢNG . CHỌN TỔNG [TABLE_ROWS] TỪ THÔNG TIN_SCHEMA.

Làm cách nào để sử dụng hàm đếm [] trong MySQL?

Cách sử dụng hàm COUNT trong MySQL .
CHỌN * TỪ số_num;
CHỌN COUNT[*] TỪ số;
CHỌN COUNT[*] TỪ số. Ở ĐÂU val = 5;
CHỌN COUNT[val] TỪ các số;
CHỌN ĐẾM [giá trị DISTINCT] TỪ các số;

Làm cách nào để lấy số lượng hàng của mỗi bảng trong MySQL?

Để đếm số hàng, bạn cần sử dụng information_schema. những cái bàn. Cú pháp như sau. CHỌN tên_bảng, hàng_bảng TỪ THÔNG TIN_SCHEMA .

SELECT đếm [*] trả về cái gì?

COUNT[*] trả về số lượng hàng trong một bảng đã chỉ định và nó duy trì các hàng trùng lặp. Nó đếm từng hàng riêng biệt. Điều này bao gồm các hàng chứa giá trị null.

Chủ Đề