SQL指南:掌握日期函数来查询和管理数据

在这里插入图片描述

文章目录

    • 1. 引言
      • 2. 建立数据库表
      • 2.1 建表语句
      • 2.2 数据插入
    • 查询案例
      • 3.1 查询当前日期的订单
      • 3.2 查询过去一周内的订单
      • 3.3 查询明天的日期
      • 3.4 查询今年的订单
      • 3.5 查询特定月份的订单
    • 总结

1. 引言

在数据库管理中,处理日期和时间是一项基本但重要的任务。本指南将通过创建一个简单的订单表和插入数据来展示如何使用SQL的日期函数来查询和管理日期相关的信息。

2. 建立数据库表

首先,我们需要创建一个包含订单信息的表。我们将其命名为Orders。

2.1 建表语句

CREATE TABLE test.Orders (OrderID INT PRIMARY KEY,OrderDate DATE,CustomerName VARCHAR(100)
);
  • OrderID: 订单的唯一标识。
  • OrderDate: 订单的日期。
  • CustomerName: 下订单的客户的名称。

2.2 数据插入

接下来,我们将插入一些示例数据来模拟真实的订单记录。

INSERT INTO test.Orders (OrderID, OrderDate, CustomerName) VALUES
(1, '2023-10-01', 'Alice'),
(2, '2023-11-08', 'Bob'),
(3, '2023-11-15', 'Charlie'),
(4, '2023-11-22', 'David'),
(5, '2023-11-29', 'Eve'),
(6, '2023-12-06', 'Frank'),
(7, '2023-12-13', 'Grace'),
(8, '2023-12-20', 'Helen');

这些数据反映了八个不同的订单,分布在不同的日期。

查询案例

接下来,我们将利用日期函数来查询这些订单信息。

3.1 查询当前日期的订单

SELECT * FROM test.Orders WHERE OrderDate = CURRENT_DATE;

由于上面插入数据是20号,今天是21号了,所以减一才能查到数据,即昨天的:

SELECT * FROM test.Orders WHERE OrderDate = CURRENT_DATE-1;

3.2 查询过去一周内的订单

# 当前时间,减去一周
SELECT * FROM test.Orders WHERE OrderDate >= CURRENT_DATE - INTERVAL 1 WEEK;

这个查询显示过去一周内的所有订单。

3.3 查询明天的日期

SELECT  * FROM test.Orders WHERE OrderDate =CURRENT_DATE + INTERVAL 1 DAY ;

增加一天即可。

3.4 查询今年的订单

SELECT * FROM test.Orders WHERE YEAR(OrderDate) = YEAR(CURRENT_DATE);

这个查询显示今年所有的订单。

其中

select YEAR(CURRENT_DATE); 

结果为当前日期对应年份2023.

3.5 查询特定月份的订单

例如,查询12月的订单。

SELECT * FROM test.Orders WHERE MONTH(OrderDate) = 12;

或者这样更精准为特点年的特定月:


SELECT * FROM test.Orders WHERE MONTH(OrderDate) = 12 and  YEAR(OrderDate) = YEAR(C

如下所示:
在这里插入图片描述

总结

使用SQL日期函数可以有效地管理和查询与时间相关的数据。通过上述简单的指南,你应该能够开始使用这些强大的工具来增强你的数据库查询能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/290367.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python 普通存款(单利)计算公式:

python 普通存款(单利)计算公式: 代码如下: #普通存款 单利计算公式:a:原值,n:计算年限,li:利率(小数), def danli(a,n,li):print("普通存款(单利)计…

应届毕业生如何一步步成为产品经理?

首先就是需要系统的学习产品经理的课程,然后再运用在工作中,积累经验;想从事产品经理还需要去考一个NPDP证书,这个证书是很多大厂的求职门槛了,感兴趣的可以了解下~ 一、什么是NPDP? NPDP 是产品经理国际资…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Button按钮组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Button按钮组件 一、操作环境 操作系统: Windows 10 专业版 IDE:DevEco Studio 3.1 SDK:HarmonyOS 3.1 二、Button按钮组件 Button 组件也是基础组件之一,和其它基础组件不…

MSPM0L1306例程学习-ADC部分(3)

MSPM0L1306例程学习系列 使用的TI的官方例程,即SDK里边包含的例程代码。 可以到TI官网下载并且安装SDK: https://www.ti.com.cn/tool/cn/download/MSPM0-SDK/ MCU使用的是MSPM0L1306, 对于ADC部分,有10个例程: 前边讲了4个例程,…

嵌入式开发是否会重复Java的结果?

今日话题,嵌入式开发是否会重复Java的结果?嵌入式开发与Java开发在性质和稳定性上有一些不同,因此不太容易出现与Java相似的结果。嵌入式开发通常属于第二产业,主要涉及制造业领域,如电子、机械(汽车&#…

干洗店预约上门取货小程序与互联网洗鞋店小程序开发制作功能方案

干洗店预约上门取货小程序与互联网洗鞋店小程序开发制作功能方案 一、洗衣洗鞋店小程序功能 1. 预约订单:忙碌时,您可以使用预约功能轻松获取洗衣服务。 2. 在线下单:用户可直接通过小程序在线下单,享受专人上门取货与配送服务。…

众和策略:2900点失而复得!A50盘中拉升

A股商场今天上午整体低位轰动,沪指2900点合浦还珠。富时我国A50指数期货盘中涨幅继续扩展至1%,此前一度跌0.5%。 现在商场整体仍相对弱势,但活跃要素在进一步累积。就在昨晚,不少上市公司宣布增持或回购信息。此外,外…

Java毕业设计——springboot+vue电影院会员管理系统

1,项目背景 随着互联网时代的到来,同时计算机网络技术高速发展,网络管理运用也变得越来越广泛。因此,建立一个B/S结构的电影院会员管理系统;电影院会员管理系统的管理工作系统化、规范化,也会提高影院形象…

Javascript 开发html网页读写IC卡源码

本示例使用设备&#xff1a; Android Linux RFID读写器NFC发卡器WEB可编程NDEF文本/智能海报/-淘宝网 (taobao.com) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">…

基于SpringBoot的医院门诊预约挂号系统 JAVA简易版

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 功能性需求2.1.1 数据中心模块2.1.2 科室医生档案模块2.1.3 预约挂号模块2.1.4 医院时政模块 2.2 可行性分析2.2.1 可靠性2.2.2 易用性2.2.3 维护性 三、数据库设计3.1 用户表3.2 科室档案表3.3 医生档案表3.4 医生放号…

springboot整合rabbitmq附源码

前提是对rabbitmq有一定的了解&#xff0c;比如虚拟主机&#xff0c;交换机&#xff0c;队列&#xff0c;信道&#xff0c;绑定&#xff0c;路由键&#xff0c;direct&#xff0c;fanout&#xff0c;topic等 我使用的是docker部署的rabbitmq&#xff0c;看到简书的这个&#x…

Python知识(1/20):变量、表达式、什么是程序?

23年是AI井喷的一年&#xff0c;我对AI的态度是恐惧的&#xff0c;以往我只需要CRUD就能需要的工作&#xff0c;AI能够编写出来&#xff0c;虽然现在还有很多缺陷&#xff0c;但是我比较喜欢向前看&#xff0c;在我未来我感觉我能遇到我被AI替代的那天。 我该怎能么办呢&#…