如何透過時間戳來獲取 MySQL 中特定的一年的記錄?


可以使用 YEAR() 函式從時間戳中獲取年份。語法如下 -

SELECT yourColumnName FROM yourTableName WHERE YEAR(yourTimestampColumnName)='yourYearValue’';

為了理解上述語法,讓我們建立一個表。建立表的查詢如下 -

mysql> create table getYearOut
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> Name varchar(10),
   -> yourTimestamp timestamp default current_timestamp,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (1.56 sec)

使用 INSERT 命令在表中插入一些記錄 -

mysql> insert into getYearOut(Name,yourTimestamp) values('John',now());
Query OK, 1 row affected (0.26 sec)
mysql> insert into getYearOut(Name,yourTimestamp) values('Carol','2018-09-23 17:34:44');
Query OK, 1 row affected (0.38 sec)
mysql> insert into getYearOut(Name,yourTimestamp) values('Bob','2016-05-12 16:12:34');
Query OK, 1 row affected (0.43 sec)

使用 select 語句顯示錶中的所有記錄。查詢如下 -

mysql> select *from getYearOut;

以下是輸出 -

+----+-------+---------------------+
| Id | Name  | yourTimestamp       |
+----+-------+---------------------+
|  1 | John  | 2019-02-05 11:46:11 |
|  2 | Carol | 2018-09-23 17:34:44 |
|  3 | Bob   | 2016-05-12 16:12:34 |
+----+-------+---------------------+
3 rows in set (0.00 sec)

以下是從時間戳中獲取年份的查詢。如果您的表有特定年份,那麼查詢如下 -

mysql> select Id, Name from getYearOut where year(yourTimestamp)='2019';

以下是顯示年份 2019 的記錄的輸出 -

+----+-------+
| Id | Name  |
+----+-------+
| 1  | John  +
1 row in set (0.00 sec)

更新於:2019 年 7 月 30 日

275 次瀏覽

啟動你的 職業生涯

完成課程獲得認證

開始
廣告