Bagaimana saya bisa mendapatkan rowcount di mysql?

Fungsi Count() menghitung jumlah baris. Pada artikel ini, kita akan berbicara tentang cara mendapatkan jumlah baris di MySQL untuk kebutuhan yang berbeda, khususnya

Mari kita mulai dengan membuat data yang akan digunakan

  • Buat tabel customer_sale_details
  • Masukkan data ke tabel customer_sale_details
  • Pilih dari customer_sale_details untuk melihat data
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;

Keluaran. -

Bagaimana saya bisa mendapatkan rowcount di mysql?
figure1- customer_sale_details

Hitung baris tabel

Pada bagian ini, mari kita lihat bagaimana mendapatkan jumlah baris dalam tabel. Amati kueri di bawah ini untuk mendapatkan hitungan catatan di tabel customer_sale_details.

SELECT COUNT(*) FROM customer_sale_details ;
_

Keluaran. -

Bagaimana saya bisa mendapatkan rowcount di mysql?
Gambar 2

Output ini menunjukkan bahwa tabel customer_sale_details memiliki 12 baris

Pilih jumlah baris kueri

Mari kita lihat di bagian ini cara mendapatkan jumlah baris yang dikembalikan oleh kueri. Kueri di bawah ini adalah untuk mendapatkan jumlah baris dari tabel customer_sale_details di mana customer_name = “George” .

SELECT count(*) FROM (SELECT * FROM customer_sale_details WHERE customer_name="George") AS count_of_query;

Keluaran. -

Bagaimana saya bisa mendapatkan rowcount di mysql?
gambar 3

Keluarannya menunjukkan bahwa jumlah baris yang dikembalikan dari kueri adalah 2

Pilih jumlah baris (berbeda)

Terkadang ada persyaratan untuk mendapatkan jumlah nilai berbeda dalam kueri atau sub-kueri. Amati kueri di bawah untuk  mendapatkan nama pelanggan yang berbeda dari tabel customer_sale_details.

SELECT COUNT(DISTINCT customer_name) AS Customer_Names FROM customer_sale_details;

Keluaran. -

Bagaimana saya bisa mendapatkan rowcount di mysql?
gambar 4

Mari kita ambil contoh lain dan amati kueri di bawah untuk  mendapatkan nama_pelanggan yang berbeda dari tabel detail_sale_pelanggan yang membeli kurang dari 100 produk.

SELECT COUNT(customer_name) FROM (
    SELECT DISTINCT customer_name FROM customer_sale_details  WHERE no_products_purchased  < 100
) AS customer_count;
_

Keluaran. -

Bagaimana saya bisa mendapatkan rowcount di mysql?
gambar 5

Pilih jumlah baris GROUP BY

Saat digunakan dengan GROUP BY, fungsi count() akan mendapatkan jumlah record yang dikarakterisasi dalam berbagai pengelompokan. Mari kita lihat bagaimana menggunakan GROUP BY dengan fungsi count() pada contoh di bawah ini. Dapatkan jumlah rekaman yang dikelompokkan menurut nama_pelanggan.

SELECT 
    customer_name, COUNT(customer_name) AS records_per_customer
FROM
    customer_sale_details
GROUP BY customer_name

Keluaran. -

Bagaimana saya bisa mendapatkan rowcount di mysql?
gambar 6

MySQL pilih jumlah baris dari semua tabel

Bagian ini akan melihat berbagai cara untuk menghitung semua tabel dalam skema database

SINTAKSIS. -

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;
_

Contoh. -

Kueri di bawah ini akan mendapatkan jumlah semua tabel yang ada dalam skema 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;

Keluaran. -

Bagaimana saya bisa mendapatkan rowcount di mysql?
gambar 7

Cara lain untuk mendapatkan hitungan semua tabel adalah dengan TAMPILKAN STATUS

SHOW TABLE STATUS;
_

SHOW STATUS beserta informasi lainnya juga akan mendapatkan jumlah baris pada setiap tabel, seperti pada gambar 8

Misalnya, untuk mendapatkan jumlah baris pada tabel andreyex dalam contoh database, gunakan operator berikut

SELECT_
COUNT(*)
FROM
andrex;

+ ---------- +
| COUNT(*) |
+ ---------- +
COUNT(*)_1
+ ---------- +
COUNT(*)_3

MENDAPATKAN JUMLAH BARIS MYSQL DALAM DUA TABEL ATAU LEBIH

Untuk mendapatkan jumlah baris dalam beberapa tabel, Anda menggunakan operator UNION untuk menggabungkan kumpulan hasil yang dikembalikan oleh masing-masing operator SELECT

Misalnya, untuk mendapatkan jumlah baris dalam tabel dan jumlah baris dalam satu kueri, gunakan petunjuk berikut

SELECT_
COUNT(*)_5
COUNT(*)_6
FROM
COUNT(*)_8
COUNT(*)_9
SELECT_
FROM_1
COUNT(*)_6
FROM
FROM_4

FROM_5

FROM_6
FROM_7

FROM_8

MENDAPATKAN JUMLAH BARIS MYSQL DARI SEMUA TABEL DALAM DATABASE TERTENTU

Untuk mendapatkan jumlah baris dari semua tabel dalam database tertentu, seperti model klasik, Anda menggunakan langkah-langkah berikut

  • Pertama, dapatkan semua nama tabel di database
  • Kedua, buat pernyataan SQL yang menyertakan semua operator SELECT COUNT(*) FROM table_name untuk semua tabel yang dipisahkan oleh UNION
  • Ketiga, jalankan pernyataan SQL menggunakan pernyataan yang disiapkan

Pertama, untuk mendapatkan semua nama tabel database, Anda menanyakan hal berikut dari database information_schema

SELECT_
table_name;_0
FROM
table_name;_2
table_name;_3
table_name;_4
table_name;_5

table_name;_6
table_name;_7
table_name;_6
table_name;_9
SELECT_0
SELECT_1
table_name;_6
SELECT_3

Kedua, untuk membangun operator SQL, kami menggunakan fungsi GROUP_CONCAT dan CONCAT sebagai berikut

SELECT_
SELECT_5
SELECT_6
SELECT_7
SELECT_8
SELECT_9
COUNT(*)_0
COUNT(*)_1
FROM
COUNT(*)_3

Query ini berisi daftar table_list nama tabel yang merupakan hasil query pada tahap pertama

Kueri berikutnya menggunakan kueri pertama sebagai tabel turunan dan mengembalikan instruksi SQL sebagai string

SELECT_
SELECT_5
SELECT_6
SELECT_7
SELECT_8
SELECT_9
COUNT(*)_0
COUNT(*)_1
FROM
FROM_3
table_name;_0
FROM
table_name;_2
table_name;_3
table_name;_4
FROM_9

Jika Anda menggunakan MySQL 8. 0+, Anda dapat menggunakan MySQL CTE (ekspresi tabel umum) alih-alih tabel turunan

andrex;0
SELECT_
table_name;_0
andrex;3
andrex;4
andrex;5
andrex;6
andrex;7
andrex;8
andrex;_9
andrex;6
COUNT(*)_1
+ ---------- +2

Ketiga, Anda mengeksekusi operator @sql menggunakan operator yang telah disiapkan sebagai berikut

+ ---------- +3
+ ---------- +4
+ ---------- +5

MENDAPATKAN JUMLAH BARIS MYSQL DARI SEMUA TABEL DALAM DATABASE DENGAN SATU QUERY

Cara cepat untuk mendapatkan jumlah baris dari semua tabel dalam database adalah dengan meminta data dari database information_schema secara langsung

SELECT_
SELECT_6
+ ---------- +8
FROM
table_name;_2
table_name;_3
table_name;_4
| COUNT(*) |_3

Metode ini terkadang tidak akurat karena jumlah baris dalam skema_informasi dan jumlah baris sebenarnya dalam tabel tidak disinkronkan. Untuk menghindari hal ini, Anda harus mengikuti instruksi ANALYZE TABLE sebelum meminta jumlah baris dalam database information_schema

| COUNT(*) |_4

Pada artikel ini Anda belajar tentang berbagai cara untuk mendapatkan jumlah baris dari satu atau lebih tabel dalam database MySQL

Bagaimana cara mendapatkan Rowcount di SQL?

Gunakan fungsi agregat COUNT untuk menghitung jumlah baris dalam tabel . Fungsi ini menggunakan nama kolom sebagai argumennya (mis. g. , id ) dan mengembalikan jumlah baris untuk kolom khusus ini dalam tabel (mis. g. , 5).

Bagaimana Anda mendapatkan Rowcount?

SQL Server @@ROWCOUNT dengan Try Catch .