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

TIMESTAMP()関数を使わずにタイムスタンプ値を昇順で並べ替えるMySQLのコマンド方法

MySQLでタイムスタンプ値を昇順(古い日時から新しい日時へ)に並べ替えたい場合、TIMESTAMP()関数を使う必要はありません。ORDER BY ASC句を使用するだけで簡単に実現できます。

基本構文

タイムスタンプのカラムを昇順にソートするための基本的な構文は以下のとおりです。

SELECT yourTimestampColumnName FROM yourTableName
ORDER BY yourTimestampColumnName ASC;

それでは、実際にテーブルを作成して動作を確認してみましょう。

サンプルテーブルの作成

まず、タイムスタンプ型のカラムを持つテーブルを作成します。以下がテーブル作成用のクエリです。

mysql> create table Timestamp_TableDemo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> yourTimestamp timestamp
   -> );
Query OK, 0 rows affected (0.83 sec)

レコードの挿入

次に、INSERT文を使っていくつかのレコードをテーブルに追加します。

mysql> insert into Timestamp_TableDemo(yourTimestamp) values('2019-02-06 17:34:57');
Query OK, 1 row affected (0.14 sec)
mysql> insert into Timestamp_TableDemo(yourTimestamp) values('2019-02-06 17:32:30');
Query OK, 1 row affected (0.25 sec)
mysql> insert into Timestamp_TableDemo(yourTimestamp) values('2019-02-06 17:32:09');
Query OK, 1 row affected (0.14 sec)

登録データの確認

SELECT文ですべてのレコードを表示してみましょう。

mysql> select *from Timestamp_TableDemo;

実行結果は以下のとおりです。この時点では、挿入した順番のまま表示されていることがわかります。

+----+---------------------+
| Id | yourTimestamp       |
+----+---------------------+
|  1 | 2019-02-06 17:34:57 |
|  2 | 2019-02-06 17:32:30 |
|  3 | 2019-02-06 17:32:09 |
+----+---------------------+
3 rows in set (0.00 sec)

タイムスタンプを昇順に並べ替えるクエリ

ここで本題の、タイムスタンプ値を昇順に並べ替えるクエリを実行します。

mysql> select yourTimestamp from Timestamp_TableDemo
   -> order by yourTimestamp ASC;

実行結果は以下のとおりです。

+---------------------+
| yourTimestamp       |
+---------------------+
| 2019-02-06 17:32:09 |
| 2019-02-06 17:32:30 |
| 2019-02-06 17:34:57 |
+---------------------+
3 rows in set (0.00 sec)

このように、ORDER BY ASCを使用することで、タイムスタンプ値が古い順(昇順)に正しく並べ替えられていることが確認できます。なお、ASCは昇順ソートのデフォルト指定であるため、省略しても同じ結果が得られます。逆に降順(新しい順)で並べたい場合は、DESCを指定してください。

  1. MySQLで特定の値を先頭に表示し、残りのレコードを昇順で並べ替える方法

    はじめにMySQLでは、ORDER BY句に条件式を組み合わせることで、特定の値を持つ行を最前面に表示し、残りの行を昇順で並べ替えることができます。この記事では、具体的な手順をサンプルコードとともに解説します。テーブルの作成まず、サンプル用のテーブルを作成します。mysql> create table DemoTable -> ( -> MonthNumber int -> );Query OK, 0 rows affected (1.68 sec)レコードの挿入次に、INSERTコマンドを使ってテーブルに複数のレコードを挿入します。mysql>

  2. Javaを使用してMySQLテーブルの値を表示する方法

    MySQLデータベースのテーブル値をJavaで表示するには、ResultSetの概念を利用します。データベースへの接続には、MySQL JDBCドライバーを使用します。テーブルの作成まず、サンプル用のテーブルを作成しましょう。mysql> create table demo87    -> (    -> name varchar(20),    -> age int    -> )