単一のMySQLクエリでIDが最も高い行を更新できますか?
はい、できます。まずテーブルを作成しましょう-
mysql> create table DemoTable ( ID int, GameScore int ); Query OK, 0 rows affected (0.55 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable values(15,848747); Query OK, 1 row affected (0.12 sec) mysql> insert into DemoTable values(13,909049); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable values(34,98474646); Query OK, 1 row affected (0.15 sec) mysql> insert into DemoTable values(31,948474); Query OK, 1 row affected (0.27 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable;
出力
+------+-----------+ | ID | GameScore | +------+-----------+ | 15 | 848747 | | 13 | 909049 | | 34 | 98474646 | | 31 | 948474 | +------+-----------+ 4 rows in set (0.00 sec)
以下は、単一のクエリでIDが最も高い行を更新するクエリです-
mysql> update DemoTable set GameScore=GameScore+10 ORDER BY ID DESC LIMIT 1; Query OK, 1 row affected (0.19 sec) Rows matched : 1 Changed : 1 Warnings : 0
テーブルレコードをもう一度確認しましょう-
mysql> select *from DemoTable;
出力
+------+-----------+ | ID | GameScore | +------+-----------+ | 15 | 848747 | | 13 | 909049 | | 34 | 98474656 | | 31 | 948474 | +------+-----------+ 4 rows in set (0.00 sec)
-
MySQLは1つのクエリで複数のレコードを更新しますか?
まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Marks1 int, -> Marks2 int, -> Marks3 int -> ); Query OK, 0 rows affected (0.60 sec) 挿入コマンド-を使用して、テー
-
1つのMySQLクエリで2つの列を更新します
このためには、SETコマンドを1回だけ使用する必要があります。まずテーブルを作成しましょう- mysql> create table DemoTable1909 ( Id int NOT NULL, FirstName varchar(20), LastName varchar(20) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> ins