サブクエリからMySQLSELECTを実行してから、DELETEを実行しますか?
まずテーブルを作成しましょう-
mysql> create table DemoTable1947 ( Id int, Name varchar(20) ); Query OK, 0 rows affected (0.00 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1947 values(101,'Chris'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1947 values(102,'David'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1947 values(103,'Mike'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1947 values(104,'Bob'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1947 values(105,'Sam'); Query OK, 1 row affected (0.00 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select * from DemoTable1947;
これにより、次の出力が生成されます-
+------+-------+ | Id | Name | +------+-------+ | 101 | Chris | | 102 | David | | 103 | Mike | | 104 | Bob | | 105 | Sam | +------+-------+ 5 rows in set (0.00 sec)
これは、サブクエリからselect *を実装してから、DELETE-
を実行するためのクエリです。mysql> delete from DemoTable1947 where Id IN(select * from (select Id from DemoTable1947 order by Id limit 3)as t); Query OK, 3 rows affected (0.00 sec)
テーブルレコードをもう一度確認しましょう-
mysql> select * from DemoTable1947;
これにより、次の出力が生成されます-
+------+------+ | Id | Name | +------+------+ | 104 | Bob | | 105 | Sam | +------+------+ 2 rows in set (0.00 sec)
-
FROM句でMySQLサブクエリを使用するにはどうすればよいですか?
サブクエリはSELECTステートメントのFROM句でうまく機能します。以下は、同じ-の構文です。 SELECT … FROM(subquery) [AS] name … わかりやすくするために、テーブル「cars」の次のデータを使用しています- mysql> Select * from Cars; +------+--------------+---------+ | ID | Name | Price | +------+--------------+---------+ |
-
MySQLから最後の10行を選択するにはどうすればよいですか?
MySQLから最後の10行を選択するには、SELECTステートメントとLimitの概念でサブクエリを使用できます。以下は例です。 テーブルを作成します。 mysql> create table Last10RecordsDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.75 sec) テーブルにレコードを挿入します。 mysql> insert into Last10RecordsDemo values(1,John),(