Computer >> Máy Tính >  >> Lập trình >> MySQL

Công cụ dòng lệnh MySQL:Làm thế nào để tìm ra số hàng bị ảnh hưởng bởi một DELETE?

Bạn có thể sử dụng row_count () ở cuối cho việc này. Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table rowAfftectedByDeleteDemo
   -> (
   -> CustomerId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> CustomerName varchar(20)
   -> );
Query OK, 0 rows affected (0.86 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau -

mysql> insert into rowAfftectedByDeleteDemo(CustomerName) values('John');
Query OK, 1 row affected (0.14 sec)
mysql> insert into rowAfftectedByDeleteDemo(CustomerName) values('Carol');
Query OK, 1 row affected (0.10 sec)
mysql> insert into rowAfftectedByDeleteDemo(CustomerName) values('Bob');
Query OK, 1 row affected (0.09 sec)
mysql> insert into rowAfftectedByDeleteDemo(CustomerName) values('Sam');
Query OK, 1 row affected (0.09 sec)
mysql> insert into rowAfftectedByDeleteDemo(CustomerName) values('David');
Query OK, 1 row affected (0.08 sec)
mysql> insert into rowAfftectedByDeleteDemo(CustomerName) values('Maxwell');
Query OK, 1 row affected (0.09 sec)
mysql> insert into rowAfftectedByDeleteDemo(CustomerName) values('Ramit');
Query OK, 1 row affected (0.08 sec)
mysql> insert into rowAfftectedByDeleteDemo(CustomerName) values('James');
Query OK, 1 row affected (0.10 sec)

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau -

mysql> select *from rowAfftectedByDeleteDemo;

Đây là kết quả -

+------------+--------------+
| CustomerId | CustomerName |
+------------+--------------+
| 1          | John         |
| 2          | Carol        |
| 3          | Bob          |
| 4          | Sam          |
| 5          | David        |
| 6          | Maxwell      |
| 7          | Ramit        |
| 8          | James        |
+------------+--------------+
8 rows in set (0.00 sec)

Trước khi xóa các hàng khỏi bảng, giá trị của row_count () như sau -

mysql> select row_count();

Đây là kết quả -

+-------------+
| row_count() |
+-------------+
| -1          |
+-------------+
1 row in set (0.00 sec)

Sau đây là truy vấn để xóa các hàng khỏi bảng -

mysql> delete from rowAfftectedByDeleteDemo where CustomerId =3 || CustomerId =4 || CustomerId =5 || CustomerId =6;
Query OK, 4 rows affected (0.13 sec)

Sau khi xóa các hàng khỏi bảng, giá trị của row_count () như sau -

mysql> select row_count();

Đây là kết quả -

+-------------+
| row_count() |
+-------------+
| 4           |
+-------------+
1 row in set (0.00 sec)