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

MySQLの最後の30行を取得する


MySQLの最後の30行を取得するには、ORDER BY DESCを使用してから、LIMIT30を使用する必要があります。構文は次のとおりです-

select * from yourTableName order by yourColumnName DESC LIMIT 30;

まずテーブルを作成しましょう-

mysql> create table DemoTable1567
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY
   -> );
Query OK, 0 rows affected (0.82 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable1567 values(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),();
Query OK, 37 rows affected (0.37 sec)
Records: 37  Duplicates: 0  Warnings: 0

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

mysql> select * from DemoTable1567;

これにより、次の出力が生成されます-

+----+
| Id |
+----+
|  1 |
|  2 |
|  3 |
|  4 |
|  5 |
|  6 |
|  7 |
|  8 |
|  9 |
| 10 |
| 11 |
| 12 |
| 13 |
| 14 |
| 15 |
| 16 |
| 17 |
| 18 |
| 19 |
| 20 |
| 21 |
| 22 |
| 23 |
| 24 |
| 25 |
| 26 |
| 27 |
| 28 |
| 29 |
| 30 |
| 31 |
| 32 |
| 33 |
| 34 |
| 35 |
| 36 |
| 37 |
+----+
37 rows in set (0.00 sec)

以下は、最後の30行を取得するためのクエリです-

mysql> select * from DemoTable1567 order by Id DESC LIMIT 30;

これにより、次の出力が生成されます-

+----+
| Id |
+----+
| 37 |
| 36 |
| 35 |
| 34 |
| 33 |
| 32 |
| 31 |
| 30 |
| 29 |
| 28 |
| 27 |
| 26 |
| 25 |
| 24 |
| 23 |
| 22 |
| 21 |
| 20 |
| 19 |
| 18 |
| 17 |
| 16 |
| 15 |
| 14 |
| 13 |
| 12 |
| 11 |
| 10 |
|  9 |
|  8 |
+----+
30 rows in set (0.00 sec)

  1. 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),(

  2. MySQLで最後の50エントリからランダムな行を5つだけ選択しますか?

    これには、サブクエリでORDER BY RAND()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1853      (      UserId int NOT NULL AUTO_INCREMENT,      PRIMARY KEY(UserId)      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します m