在 MySQL 中从时间戳中获取特定年份的记录?
mysqldatabasemysqli
您可以使用 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)
使用插入命令在表中插入一些记录 −
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)