Nhận số hàng bị ảnh hưởng trong MySQL
Ngày đăng:
23/01/2023
Trả lời:
0
Lượt xem:
75
Trong SQL Server, bạn có thể sử dụng hàm hệ thống Show Ví dụ: nếu một truy vấn trả về 4 hàng, thì Ví dụ 1 – Chọn dữ liệuĐây là một ví dụ cơ bản để chứng minh nó hoạt động như thế nào
Kết quả +---------+-----------+-----------+ | DogId | DogName | GoodDog | |---------+-----------+-----------| | 1 | Fetch | 0 | | 2 | Fluffy | 0 | | 3 | Wag | 0 | +---------+-----------+-----------+ (3 rows affected) +--------------------+ | (No column name) | |--------------------| | 3 | +--------------------+ (1 row affected) Trong trường hợp này, câu lệnh +---------+-----------+-----------+ | DogId | DogName | GoodDog | |---------+-----------+-----------| | 1 | Fetch | 0 | | 2 | Fluffy | 0 | | 3 | Wag | 0 | +---------+-----------+-----------+ (3 rows affected) +--------------------+ | (No column name) | |--------------------| | 3 | +--------------------+ (1 row affected)0 của tôi trả về 3 hàng và do đó, @@ROWCOUNT trả về 3Ví dụ 2 – Cập nhật dữ liệuĐây là một ví dụ về việc sử dụng +---------+-----------+-----------+ | DogId | DogName | GoodDog | |---------+-----------+-----------| | 1 | Fetch | 0 | | 2 | Fluffy | 0 | | 3 | Wag | 0 | +---------+-----------+-----------+ (3 rows affected) +--------------------+ | (No column name) | |--------------------| | 3 | +--------------------+ (1 row affected)3 để kiểm tra xem có bất kỳ hàng nào được cập nhật hay không
Kết quả (0 rows affected) A dog outside the system cannot be a good dog Trong trường hợp này, không có hàng nào được cập nhật vì DogId không tồn tại trong bảng. Chúng tôi có thể sử dụng +---------+-----------+-----------+ | DogId | DogName | GoodDog | |---------+-----------+-----------| | 1 | Fetch | 0 | | 2 | Fluffy | 0 | | 3 | Wag | 0 | +---------+-----------+-----------+ (3 rows affected) +--------------------+ | (No column name) | |--------------------| | 3 | +--------------------+ (1 row affected)5 để trả về một thông báo thích hợp cho người dùng Nó lại ở đây, nhưng lần này con chó tồn tại
Kết quả ________số 8_______Bộ dữ liệu cực lớn?Nếu bạn cho rằng số lượng hàng bị ảnh hưởng bởi một câu lệnh sẽ lớn hơn 2 tỷ, hãy sử dụng +---------+-----------+-----------+ | DogId | DogName | GoodDog | |---------+-----------+-----------| | 1 | Fetch | 0 | | 2 | Fluffy | 0 | | 3 | Wag | 0 | +---------+-----------+-----------+ (3 rows affected) +--------------------+ | (No column name) | |--------------------| | 3 | +--------------------+ (1 row affected)6 để thay thế Bạn có thể sử dụng nó giống như cách mà
Kết quả (0 rows affected) A dog outside the system cannot be a good dog Khi @@ROWCOUNT được Đặt lạiCác câu lệnh như +---------+-----------+-----------+ | DogId | DogName | GoodDog | |---------+-----------+-----------| | 1 | Fetch | 0 | | 2 | Fluffy | 0 | | 3 | Wag | 0 | +---------+-----------+-----------+ (3 rows affected) +--------------------+ | (No column name) | |--------------------| | 3 | +--------------------+ (1 row affected)9, 0, 1, 2, 3, 4, 5 hoặc 6 đặt lại giá trị @@ROWCOUNT thành 8
Làm cách nào tôi có thể đếm số hàng bị ảnh hưởng trong SQL?Các câu lệnh Transact-SQL có thể đặt giá trị trong @@ROWCOUNT theo các cách sau. . Đặt @@ROWCOUNT thành số hàng bị ảnh hưởng hoặc đã đọc. Hàng có thể hoặc không thể được gửi đến khách hàng Giữ nguyên @@ROWCOUNT từ lần thực thi câu lệnh trước đó Đặt lại @@ROWCOUNT thành 0 nhưng không trả lại giá trị cho máy khách Cái nào trả về số hàng bị ảnh hưởng?SQL Server @@ROWCOUNT là một biến hệ thống được sử dụng để trả về số hàng bị ảnh hưởng bởi câu lệnh được thực thi cuối cùng trong lô. |