MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLクエリの影響を受ける行の総数を取得するにはどうすればよいですか?


MySQL ROW_COUNT() MySQLクエリの影響を受ける行の総数を取得するために使用できます。これを説明するために、テーブルにレコードを挿入できるプロシージャを作成しています。これにより、影響を受けた行の数が表示されます。

mysql> Delimiter //
mysql> CREATE PROCEDURE `query`.`row_cnt` (IN command VarChar(60000))
    -> BEGIN
    ->    SET @query = command;
    ->    PREPARE stmt FROM @query;
    ->    EXECUTE stmt;
    ->    SELECT ROW_COUNT() AS 'Affected rows';
    -> END //
Query OK, 0 rows affected (0.00 sec)

mysql> Delimiter ;
mysql> Create table Testing123(First Varchar(20), Second Varchar(20));
Query OK, 0 rows affected (0.48 sec)

mysql> CALL row_cnt("INSERT INTO testing123(First,Second) Values('Testing First','Testing Second');");
+---------------+
| Affected rows |
+---------------+
|             1 |
+---------------+
1 row in set (0.10 sec)

Query OK, 0 rows affected (0.11 sec)

上記の結果セットは、データを「 tests123 」に挿入した後、I行が影響を受けることを示しています。 ’テーブル。


  1. 最後のクエリの行数を見つけるためのMySQLクエリ

    これには、MySQLのFOUND_ROWSを使用します。以下は構文です- SELECT SQL_CALC_FOUND_ROWS TABLE_NAME FROM `information_schema`.tables WHERE TABLE_NAME LIKE "yourValue%" LIMIT yourLimitValue; ここでは、データベース「web」を使用しており、多くのテーブルがあります。たとえば、 DemoTable29から始まるテーブルがあります。 。上記の構文を実装して、そのような行のうち4つだけをフェッチしてみましょう- mysql> SELEC

  2. 1つのMySQLクエリで複数の行を取得するにはどうすればよいですか?

    まずテーブルを作成しましょう- mysql> create table DemoTable (    Id int,    Name varchar(100) ); Query OK, 0 rows affected (0.60 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(100,'Chris'); Query OK, 1 row affected (0.16 sec) mysql> insert into Dem