在 mysql 中从日期时间类型转换为仅日期
今天,我们将学习mysql中datetime类型转换为date类型的 date()、cast()、convert() 和 date_format() 方法。 上面提到的方法都可以在mysql 4.0及以上版本中使用。
在 mysql 中从 datetime 类型转换为 date 类型
为了通过代码示例来理解它,让我们创建一个订单表,其中包含 id、productname、ordernumber 和 orderdatetime 作为属性; 我们还将使用 id 字段创建一个主键。 请参阅以下查询。
示例代码:
create table orders(
id int not null,
productname varchar(50) not null,
ordernumber int not null,
orderdatetime datetime not null,
primary key(id)
);
insert into orders (id, productname, ordernumber, orderdatetime)
values
(1, 'oppo f17', 3322, '2022-04-11 04:32:15'),
(2, 'dell laptop', 5433, '2022-05-12 12:23:09'),
(3, 'hp mouse', 3489, '2022-05-16 07:23:16');
select * from orders;
输出:
---- ------------- ------------- ---------------------
| id | productname | ordernumber | orderdatetime |
---- ------------- ------------- ---------------------
| 1 | oppo f17 | 3322 | 2022-04-11 04:32:15 |
| 2 | dell laptop | 5433 | 2022-05-12 12:23:09 |
| 3 | hp mouse | 3489 | 2022-05-16 07:23:16 |
---- ------------- ------------- ---------------------
3 rows in set (0.00 sec)
一旦表格准备就绪,我们现在可以根据项目要求使用以下任何方法来满足目标。
在 mysql 中使用 date() 将 datetime 转换为 date
示例代码:
select id, productname, ordernumber, date(orderdatetime) from orders;
输出:
---- ------------- ------------- ---------------------
| id | productname | ordernumber | date(orderdatetime) |
---- ------------- ------------- ---------------------
| 1 | oppo f17 | 3322 | 2022-04-11 |
| 2 | dell laptop | 5433 | 2022-05-12 |
| 3 | hp mouse | 3489 | 2022-05-16 |
---- ------------- ------------- ---------------------
3 rows in set (0.00 sec)
date()
函数可以从有效的 date 或 datetime 类型字段中提取 date 部分。 如果传递了无效的表达式,它将返回 null。
如果我们还想仅根据 date 对数据进行分组,则可以使用这篇文章。
在 mysql 中使用 cast() 将 datetime 转换为 date
示例代码:
select id, productname, ordernumber, cast(orderdatetime as date) from orders;
输出:
---- ------------- ------------- -----------------------------
| id | productname | ordernumber | cast(orderdatetime as date) |
---- ------------- ------------- -----------------------------
| 1 | oppo f17 | 3322 | 2022-04-11 |
| 2 | dell laptop | 5433 | 2022-05-12 |
| 3 | hp mouse | 3489 | 2022-05-16 |
---- ------------- ------------- -----------------------------
3 rows in set (0.00 sec)
cast()
方法用于将一种数据类型的值转换(转换)为另一种给定数据类型。
在 mysql 中使用 convert() 将 datetime 转换为 date
示例代码:
select id, productname, ordernumber, convert(orderdatetime, date) from orders;
输出:
---- ------------- ------------- ------------------------------
| id | productname | ordernumber | convert(orderdatetime, date) |
---- ------------- ------------- ------------------------------
| 1 | oppo f17 | 3322 | 2022-04-11 |
| 2 | dell laptop | 5433 | 2022-05-12 |
| 3 | hp mouse | 3489 | 2022-05-16 |
---- ------------- ------------- ------------------------------
3 rows in set (0.00 sec)
我们还可以使用 convert()
方法将 datetime 类型字段转换为仅 date。 它接受两个参数——第一个是需要转换的值,第二个是给定值将转换成的数据类型。
在 mysql 中使用 date_format() 将 datetime 转换为 date
示例代码:
select id, productname, ordernumber,
date_format(orderdatetime, '%y-%m-%d') from orders;
输出:
---- ------------- ------------- ----------------------------------------
| id | productname | ordernumber | date_format(orderdatetime, '%y-%m-%d') |
---- ------------- ------------- ----------------------------------------
| 1 | oppo f17 | 3322 | 2022-04-11 |
| 2 | dell laptop | 5433 | 2022-05-12 |
| 3 | hp mouse | 3489 | 2022-05-16 |
---- ------------- ------------- ----------------------------------------
3 rows in set (0.00 sec)
date_format()
函数将 datetime 转换为 date 类型,对于更改当前日期格式很有用。 例如,如果我们想以 d/m/y 格式显示 date,我们可以按如下方式进行。
示例代码:
select id, productname, ordernumber,
date_format(orderdatetime, '%d/%m/%y') from orders;
输出:
---- ------------- ------------- ----------------------------------------
| id | productname | ordernumber | date_format(orderdatetime, '%d/%m/%y') |
---- ------------- ------------- ----------------------------------------
| 1 | oppo f17 | 3322 | 11/04/2022 |
| 2 | dell laptop | 5433 | 12/05/2022 |
| 3 | hp mouse | 3489 | 16/05/2022 |
---- ------------- ------------- ----------------------------------------
3 rows in set (0.00 sec)
如果我们想看到月份的名称而不是月份的数字,我们也可以使用 date_format()
函数将其转换为以下格式。
示例代码:
select id, productname, ordernumber,
date_format(orderdatetime, '%d %m %y') from orders;
输出:
---- ------------- ------------- ----------------------------------------
| id | productname | ordernumber | date_format(orderdatetime, '%d %m %y') |
---- ------------- ------------- ----------------------------------------
| 1 | oppo f17 | 3322 | 11th april 2022 |
| 2 | dell laptop | 5433 | 12th may 2022 |
| 3 | hp mouse | 3489 | 16th may 2022 |
---- ------------- ------------- ----------------------------------------
3 rows in set (0.00 sec)
转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处
本文地址:
相关文章
如何在 mysql 中声明和使用变量
发布时间:2024/03/26 浏览次数:115 分类:mysql
-
当你需要在 mysql 中的脚本中存储单个值时,最好的方法是使用变量。变量有不同的种类,有必要知道何时以及如何使用每种类型。
发布时间:2024/03/26 浏览次数:176 分类:mysql
-
本教程演示了如何在 mysql 中重置自动增量。
在 mysql 中使用 mysqladmin 刷新主机解除阻塞
发布时间:2024/03/26 浏览次数:82 分类:mysql
-
你将了解阻止主机的原因。此外,通过使用 phpmyadmin 和命令提示符刷新主机缓存来解除阻塞的不同方法和效果。
发布时间:2024/03/26 浏览次数:199 分类:mysql
-
本教程演示如何在 mysql 中转换为整数。