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

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,'Carol'),(3,'Bob'),(4,'Sam'),(5,'David'),(6,'Taylor');
Query OK, 6 rows affected (0.12 sec)
Records: 6  Duplicates: 0  Warnings: 0

mysql> insert into Last10RecordsDemo values(7,'Sam'),(8,'Justin'),(9,'Ramit'),(10,'Smith'),(11,'Clark'),(12,'Johnson');
Query OK, 6 rows affected (0.14 sec)
Records: 6  Duplicates: 0  Warnings: 0

すべてのレコードを表示します。

mysql> select *from Last10RecordsDemo;

以下は出力です。

+------+---------+
| id   | name    |
+------+---------+
|    1 | John    |
|    2 | Carol   |
|    3 | Bob     |
|    4 | Sam     |
|    5 | David   |
|    6 | Taylor  |
|    7 | Sam     |
|    8 | Justin  |
|    9 | Ramit   |
|   10 | Smith   |
|   11 | Clark   |
|   12 | Johnson |
+------+---------+
12 rows in set (0.00 sec)

以下は、テーブルから最後の10レコードを取得するための構文です。ここでは、LIMIT句を使用しました。

SELECT * FROM (
   SELECT * FROM yourTableName ORDER BY id DESC LIMIT 10
)Var1
   ORDER BY id ASC;

上記のクエリを実装しましょう。

mysql> SELECT * FROM (
   ->     SELECT * FROM Last10RecordsDemo ORDER BY id DESC LIMIT 10
   -> )Var1
   ->
   -> ORDER BY id ASC;

以下は、最後の10レコードを表示する出力です。

+------+---------+
| id   | name    |
+------+---------+
|    3 | Bob     |
|    4 | Sam     |
|    5 | David   |
|    6 | Taylor  |
|    7 | Sam     |
|    8 | Justin  |
|    9 | Ramit   |
|   10 | Smith   |
|   11 | Clark   |
|   12 | Johnson |
+------+---------+
10 rows in set (0.00 sec)

SELECTステートメントを使用して両方のレコードを照合できます。

合計レコード(12)

MySQLから最後の10行を選択するにはどうすればよいですか?

過去10レコード(10)

MySQLから最後の10行を選択するにはどうすればよいですか?
  1. 月ごとにMySQLを選択する方法は?

    月で選択するには、MONTH()関数を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1599    -> (    -> Shippingdate datetime    -> ); Query OK, 0 rows affected (0.78 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1599 values('2019-10-21');

  2. 現在の日付から1日以上経過しているMySQLの行を選択するにはどうすればよいですか?

    現在の日付から1日を超えるデータを取得するには、MySQLのINTERVALの概念を使用します。 現在の日付は次のとおりです- mysql> select curdate(); +------------+ | curdate()  | +------------+ | 2019-11-29 | +------------+ 1 row in set (0.00 sec) 最初にテーブルを作成します- mysql> create table DemoTable1806      (      DueDate