2025年第40章 SQL Date 函数教程

第40章 SQL Date 函数教程SQL 日期 Dates 当咱们处理日期时 最难的任务恐怕是确保所插入的日期的格式 与 database 中日期列的格式相匹配 只要大王的数据包含的只是日期部分 运行查询就不会出问题 但是 如果涉及时间部分 情况就有点复杂了 在讨论日期查询的复杂性之前

大家好,我是讯享网,很高兴认识大家。

SQL 日期(Dates)

当咱们处理日期时,最难的任务恐怕是确保所插入的日期的格式,与database中日期列的格式相匹配。

只要大王的数据包含的只是日期部分,运行查询就不会出问题。但是,如果涉及时间部分,情况就有点复杂了。

在讨论日期查询的复杂性之前,咱们先来看看最重要的内建日期处理函数。


My第40章 SQL Date 函数教程

下面的表格列出了 MySQL 中最重要的内建日期函数:

函数 描述
NOW() return 当前的日期和时间
CURDATE() return 当前的日期
CURTIME() return 当前的时间
DATE() 提取日期或日期/时间表达式的日期部分
EXTRACT() return 日期/时间的单独部分
DATE_ADD() 向日期添加指定的时间间隔
DATE_SUB() 从日期减去指定的时间间隔
DATEDIFF() return 两个日期之间的天数
DATE_FORMAT() 用不同的格式显示日期/时间

SQL Server Date 函数

下面的表格列出了 SQL Server 中最重要的内建日期函数:

函数 描述
GETDATE() return 当前的日期和时间
DATEPART() return 日期/时间的单独部分
DATEADD() 在日期中添加或减去指定的时间间隔
DATEDIFF() return 两个日期之间的时间
CONVERT() 用不同的格式显示日期/时间

SQL Date 数据类型

MySQL 使用下列数据类型在database中存储日期或日期/时间值:

  • DATE - 格式:YYYY-MM-DD
  • DATETIME - 格式:YYYY-MM-DD HH:MM:SS
  • TIMESTAMP - 格式:YYYY-MM-DD HH:MM:SS
  • YEAR - 格式:YYYY 或 YY

SQL Server 使用下列数据类型在database中存储日期或日期/时间值:

  • DATE - 格式:YYYY-MM-DD
  • DATETIME - 格式:YYYY-MM-DD HH:MM:SS
  • SMALLDATETIME - 格式:YYYY-MM-DD HH:MM:SS
  • TIMESTAMP - 格式:唯一的数字

注释:当大王在database中创建一个新表时,需要为列选择数据类型!

如需了解所有可用的数据类型,请访问咱们完整的 数据类型参考手册。


SQL 日期处理

如果不涉及时间部分,那么咱们可以轻松地比较两个日期!


讯享网

假设咱们有如下的 “Orders” 表:

OrderId ProductName OrderDate
1 Geitost 2008-11-11
2 Camembert Pierrot 2008-11-09
3 Mozzarella di Giovanni 2008-11-11
4 Mascarpone Fabioli 2008-10-29

现在,咱们希望从上表中选取 OrderDate 为 “2008-11-11” 的记录。

咱们使用下面的 SELECT 语句:

 SELECT * FROM Orders WHERE OrderDate='2008-11-11' 

讯享网

结果集请在输出结果查看

OrderId ProductName OrderDate
1 Geitost 2008-11-11
3 Mozzarella di Giovanni 2008-11-11

现在,假设 “Orders” 表如下所示(请注意 “OrderDate” 列中的时间部分):

OrderId ProductName OrderDate
1 Geitost 2008-11-11 13:23:44
2 Camembert Pierrot 2008-11-09 15:45:21
3 Mozzarella di Giovanni 2008-11-11 11:12:01
4 Mascarpone Fabioli 2008-10-29 14:56:59

如果咱们使用和上面一样的 SELECT 语句:

讯享网 SELECT * FROM Orders WHERE OrderDate='2008-11-11'SELECT * FROM Orders WHERE OrderDate='2008-11-11 00:00:00' 

那么咱们将得不到结果!因为表中没有"2008-11-11 00:00:00"日期。如果没有时间部分,默认时间为 00:00:00。

提示:如果大王希望使查询简单且更易维护,那么请不要在日期中使用时间部分!

本专栏所有文章

第1章 SQL 教程 第2章 SQL 简介教程
第3章 SQL 语法教程 第4章 SQL SELECT教程
第5章 SQL SELECT DISTINCT教程 第6章 SQL WHERE教程
第7章 SQL AND & OR教程 第8章 SQL ORDER BY教程
第9章 SQL INSERT INTO教程 第10章 SQL UPDATE教程
第11章 SQL DELETE教程 第12章 SQL SELECT TOP教程
第13章 SQL LIKE教程 第14章 SQL 通配符教程
第15章 SQL IN教程 第16章 SQL BETWEEN教程
第17章 SQL 别名教程 第18章 SQL 连接(JOIN)教程
第19章 SQL INNER JOIN教程 第20章 SQL LEFT JOIN教程
第21章 SQL RIGHT JOIN教程 第22章 SQL FULL JOIN教程
第23章 SQL UNION教程 第24章 SQL SELECT INTO教程
第25章 SQL INSERT INTO SELECT教程 第26章 SQL CREATE DATABASE教程
第27章 SQL CREATE TABLE教程 第28章 SQL 约束教程
第29章 SQL NOT NULL教程 第30章 SQL UNIQUE教程
第31章 SQL PRIMARY KEY教程 第32章 SQL FOREIGN KEY教程
第33章 SQL CHECK教程 第34章 SQL DEFAULT教程
第35章 SQL CREATE INDEX教程 第36章 SQL DROP教程
第37章 SQL ALTER教程 第38章 SQL Auto Increment教程
第39章 SQL 视图教程 第40章 SQL 日期教程
第41章 SQL NULL 值教程 第42章 SQL NULL 函数教程
第43章 SQL 通用数据类型教程 第44章 SQL DB 数据类型教程
第45章 SQL 函数教程 第46章 SQL AVG()教程
第47章 SQL COUNT()教程 第48章 SQL FIRST()教程
第49章 SQL LAST()教程 第50章 SQL MAX()教程
第51章 SQL MIN()教程 第52章 SQL SUM()教程
第53章 SQL GROUP BY教程 第54章 SQL HAVING教程
第55章 SQL EXISTS教程 第56章 SQL UCASE()教程
第57章 SQL LCASE()教程 第58章 SQL MID()教程
第59章 SQL LEN()教程 第60章 SQL ROUND()教程
第61章 SQL NOW()教程 第62章 SQL FORMAT()教程
第63章 SQL 快速参考教程 第64章 SQL 主机教程
第65章 SQL 总结教程

寄语

本文有榴莲酱CSDN原创,欢迎点赞、转载,博客地址:https://blog.csdn.net/

  • 诚实的人务必对自我守信,他的最后靠山就是真诚。
  • 极端的命运是对智慧的真正检验,谁最能经得起这种考验,谁就是大智大慧
  • 对于一颗什么都需要享受的青年的心,获得幸福并不需要多少代价。
  • 人生在世几十年,不断的寻找的莫非就是金钱与感情。年轻时为了物质的生活不断追求金钱给我们带来的**,可随着经历与阅历的不断增加,渐渐的才明白一辈子最重要的是什么,苦苦追寻人生真谛为何物,其实感情比任何物质都重要,它是支持着我们走下去的动力,只要有感情的滋润,人生不管遇到什么坎坷都可以过去。
  • 不知不觉又到年底了,年复一年,真的没有意思,我现在的每一天都过得极有规律,在什么时间,在什么地点。
小讯
上一篇 2025-01-08 20:56
下一篇 2025-04-04 11:20

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/129224.html