mysql で更新があったレコード数を取得する方法。
各種言語のライブラリだと、mysql_affected_rows() 的なもので更新が合った行数を取得できますが、
mysql のコマンドラインでは、更新を行った直後に select row_count() を実行します。
以下の様なテーブルを作成。
変更があった行数を取得。
各種言語のライブラリだと、mysql_affected_rows() 的なもので更新が合った行数を取得できますが、
mysql のコマンドラインでは、更新を行った直後に select row_count() を実行します。
以下の様なテーブルを作成。
create table ids ( id integer not null, primary key(id) ); insert into ids set id = 1; insert into ids set id = 2; insert into ids set id = 3; insert into ids set id = 4; insert into ids set id = 5; insert into ids set id = 6; insert into ids set id = 7; insert into ids set id = 8; insert into ids set id = 9; insert into ids set id = 10;
変更があった行数を取得。
mysql> delete from ids where id <= 4; Query OK, 4 rows affected (0.01 sec) mysql> select row_count(); +-------------+ | row_count() | +-------------+ | 4 | +-------------+ 1 row in set (0.00 sec) mysql> delete from ids where id <= 6; Query OK, 2 rows affected (0.00 sec) mysql> select row_count(); +-------------+ | row_count() | +-------------+ | 2 | +-------------+ 1 row in set (0.00 sec)