使用 WEEKDAY 和记录显示减去日期记录的 MySQL 查询


为此,可以使用 DATE_FORMAT()。我们首先创建一个表 −

mysql> create table DemoTable1820
     (
     AdmissionDate varchar(20)
     );
Query OK, 0 rows affected (0.00 sec)

使用 insert 命令在表中插入一些记录 −

mysql> insert into DemoTable1820 values('20/10/2019');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1820 values('19/12/2018');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1820 values('16/04/2017');
Query OK, 1 row affected (0.00 sec)

使用 select 语句显示表中的所有记录 −

mysql> select * from DemoTable1820;

这将产生以下输出 −

+---------------+
| AdmissionDate |
+---------------+
| 20/10/2019    |
| 19/12/2018    |
| 16/04/2017    |
+---------------+
3 rows in set (0.00 sec)

以下是对带有星期几的日期记录进行减法并显示星期几名称和记录的查询 −

mysql> select DATE_FORMAT(SUBDATE(STR_TO_DATE(AdmissionDate,'%d/%m/%y'), WEEKDAY(STR_TO_DATE(AdmissionDate,'%d/%m/%y'))), '%a %d %b') from DemoTable1820;

这将产生以下输出 −

+-------------------------------------------------------------------------------------------------------------------------+
| DATE_FORMAT(SUBDATE(STR_TO_DATE(AdmissionDate,'%d/%m/%y'), WEEKDAY(STR_TO_DATE(AdmissionDate,'%d/%m/%y'))), '%a %d %b') |
+-------------------------------------------------------------------------------------------------------------------------+
| Mon 19 Oct                                                                                                              |
| Mon 14 Dec                                                                                                              |
| Mon 13 Apr                                                                                                              |
+-------------------------------------------------------------------------------------------------------------------------+
3 rows in set, 6 warnings (0.00 sec)

更新时间:2019-12-24

172 个人查看

启动你的 职业生涯

通过完成课程获得认证

开始
广告