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

限られた数のレコードを選択するためのSELECTTOPコマンドがMySQLに存在しますか?


MySQLにはTOPの概念はありません。クエリを作成する別の方法は、LIMITを使用することです。つまり、2つのレコードを選択するには、TOP2を使用する必要があります。MySQLで同じ構文を見てみましょう

SELECT *FROM yourTableName ORDER BY yourColumnName DESC LIMIT 2;

上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです

mysql> create table Top2Demo
   - > (
   - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   - > Name varchar(20),
   - > Age int
   - > );
Query OK, 0 rows affected (0.91 sec)
>

挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。

クエリは次のとおりです

mysql> insert into Top2Demo(Name,Age) values('Larry',23);
Query OK, 1 row affected (0.13 sec)
mysql> insert into Top2Demo(Name,Age) values('Bob',21);
Query OK, 1 row affected (0.10 sec)
mysql> insert into Top2Demo(Name,Age) values('Sam',19);
Query OK, 1 row affected (0.14 sec)
mysql> insert into Top2Demo(Name,Age) values('David',25);
Query OK, 1 row affected (0.15 sec)
mysql> insert into Top2Demo(Name,Age) values('Carol',22);
Query OK, 1 row affected (0.39 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示します。

クエリは次のとおりです

mysql> select *from Top2Demo;

以下は出力です

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  1 | Larry |   23 |
|  2 | Bob   |   21 |
|  3 | Sam   |   19 |
|  4 | David |   25 |
|  5 | Carol |   22 |
+----+-------+------+
5 rows in set (0.00 sec)

これは、LIMIT2を使用して上位2つのレコードを選択するためのクエリです

mysql> SELECT * FROM Top2Demo ORDER BY Age DESC LIMIT 2;

以下は出力です

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  4 | David |   25 |
|  1 | Larry |   23 |
+----+-------+------+
2 rows in set (0.00 sec)

  1. MySQLで特定の番号が含まれている場合は、すべてのレコードを選択しますか?

    このためには、LIKEと一緒にconcat()を使用します。以下は構文です- select *from yourTableName where concat(',', yourColumnName, ',') like '%,yourValue,%'; テーブルを作成しましょう- mysql> create table demo49 −> ( −> id varchar(20) −> , −> first_name varchar(20) −> );

  2. MySQL-特定の番号が含まれている場合はすべてのレコードを選択しますか?

    特定の番号を持つすべてのレコードを選択するには、MySQLでFIND_IN_SET()を使用します。 テーブルを作成しましょう- 例 mysql> create table demo73    -> (    -> interest_id varchar(100),    -> interest_name varchar(100)    -> ); Query OK, 0 rows affected (1.48 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。