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

MySQLでテーブルの最後から2番目の行を取得しますか?


MySQLでテーブルの最後から2番目の行を取得するには、ORDERBY句を使用する必要があります。

構文は次のとおりです。

select *from yourTableName order by yourColumnName DESC LIMIT 1,1;

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

mysql> create table secondLastDemo
   -> (
   -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> StudentName varchar(10)
   -> );
Query OK, 0 rows affected (0.52 sec)

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

クエリは次のとおりです。

mysql> insert into secondLastDemo(StudentName) values('Larry');
Query OK, 1 row affected (0.15 sec)
mysql> insert into secondLastDemo(StudentName) values('Carol');
Query OK, 1 row affected (0.09 sec)
mysql> insert into secondLastDemo(StudentName) values('Bob');
Query OK, 1 row affected (0.10 sec)
mysql> insert into secondLastDemo(StudentName) values('Sam');
Query OK, 1 row affected (0.09 sec)
mysql> insert into secondLastDemo(StudentName) values('Mike');
Query OK, 1 row affected (0.10 sec)
mysql> insert into secondLastDemo(StudentName) values('David');
Query OK, 1 row affected (0.08 sec)
mysql> insert into secondLastDemo(StudentName) values('Maxwell');
Query OK, 1 row affected (0.10 sec)
mysql> insert into secondLastDemo(StudentName) values('Robert');
Query OK, 1 row affected (0.13 sec)
mysql> insert into secondLastDemo(StudentName) values('James');
Query OK, 1 row affected (0.14 sec)
mysql> insert into secondLastDemo(StudentName) values('Chris');
Query OK, 1 row affected (0.11 sec)
mysql> insert into secondLastDemo(StudentName) values('Ramit');
Query OK, 1 row affected (0.08 sec)

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

クエリは次のとおりです。

mysql> select *from secondLastDemo;

以下は出力です。

+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
| 1         | Larry       |
| 2         | Carol       |
| 3         | Bob         |
| 4         | Sam         |
| 5         | Mike        |
| 6         | David       |
| 7         | Maxwell     |
| 8         | Robert      |
| 9         | James       |
| 10        | Chris       |
| 11        | Ramit       |
+-----------+-------------+
11 rows in set (0.00 sec)

これは、MySQLでテーブルの最後から2番目の行を取得するためのクエリです。

mysql> select *from secondLastDemo order by StudentId DESC LIMIT 1,1;

出力には、最後から2番目のレコードが表示されます。

+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
| 10        | Chris       |
 +-----------+-------------+
1 row in set (0.00 sec)

  1. Javaを使用してMySQLデータベースのテーブルから最後のレコードを取得しますか?

    MySQLデータベースからデータを取得するには、JavaのexecuteQuery()メソッドを使用する必要があります。まず、MySQLデータベースにテーブルを作成します。ここでは、「サンプル」データベースに次のテーブルを作成します mysql> create table javaGetDataDemo - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > FirstName varchar(10), - > LastName varchar(10) - > ); Query OK, 0 rows

  2. MySQLで日付の最後の1秒を取得しますか?

    MySQLで日付の最後の秒を取得するには、INTERVALコマンドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> JoiningDatetime datetime,    -> DueDatetime datetime    -> ); Query OK, 0 rows affected (0.55 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> i