当前位置: 首页 > news >正文

如何获取sql数据中时间的月份、年份(类型为date)

可用自带的函数month来实现

如:

创建表及插入数据:

create table test (id int,begindate datetime) insert into test values (1,'2015-01-01') 
insert into test values (2,'2015-02-01')

执行sql语句,获取月份

select MONTH(begindate) as month from test

执行结果:

执行sql语句,获取年份YEAR

select id,YEAR(begindate) as year from test

执行结果:

MySQL Now ()函数和SQL Server GetDate ()函数的区别

区别 MySQL Now ()函数和SQL Server GetDate ()函数非常相似,它们可以用于获取当前系统时间,格式化当前日期时间的输出版本,并从当前日期时间中提取特定部分。

但是,它们之间存在以下区别:

MySQL的Now ()函数返回当前系统日期和时间戳,它返回的值精确到秒级别

而SQL Server的GetDate ()函数返回更精确的时间戳,它返回的值精确到毫秒级别

MySQL Now ()函数的结果是DATETIME类型

而SQL Server GetDate ()函数的结果是DATETIME2类型

1,获取当前日期

select getdate()

2,convert函数格式化

Convert 函数是用于将数据从一种类型转换为另一种类型的函数。当需要在SQL Server中改变数据类型或者需要以特定格式显示日期/时间数据时,CONVERT()函数非常有用,

该函数的基本语法如下:

CONVERT(data_type(length), expression, style)

其中,data_type(length)指定目标数据类型和长度,expression是要转换的值,而style则定义了日期/时间的输出格式。

例如,如果你想获取当前日期并以 年-月-日 时:分:秒 的格式显示,可以使用以下SQL语句

SELECT CONVERT(VARCHAR(50), GETDATE(), 20)

输出结果可能类似于:2021-04-15 13:45:35

此外,还可以使用不同的 style 值来改变日期/时间的显示格式。例如,如果你想以 年/月/日 时:分:秒 的格式显示当前日期和时间,可以使用以下SQL语句2:

SELECT CONVERT(VARCHAR(50), GETDATE(), 111) + ' ' + 
CONVERT(VARCHAR(50), GETDATE(), 108)

输出结果可能类似于:2021/04/15 13:47:45

select convert(varchar,getdate(),120)

Convert 函数支持多种不同的 style 值,每个值都对应不同的日期和时间格式。这使得 CONVERT() 函数成为在处理SQL Server中的日期和时间数据时非常灵活和强大的工具 

convert函数的最后一个参数style 可以有 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,100,

​ 101,102,103,104,105,106,107,108,109,110,111,112,113,114,120,121,126,127,130,131等

​ 常用的 20,23,24,102,111,112,120等

    select CONVERT(varchar,GETDATE(),20)  --2018-04-23 14:44:22select CONVERT(varchar,GETDATE(),23)  --2018-04-23select CONVERT(varchar,GETDATE(),24)  --14:44:22select CONVERT(varchar,GETDATE(),102) --2018.04.23select CONVERT(varchar,GETDATE(),111) --2018/04/23select CONVERT(varchar,GETDATE(),112) --20180423

3,获取当前年

select datename(YYYY,getdate()) 
select datename(Year,getdate()) select datepart(YYYY,getdate()) 
select datepart(Year,getdate()) select year(时间字段名)

3,获取当前月 --05 或5

select datename(MM,getdate()) --04 
select datename(Month,getdate()) --04 select datepart(MM,getdate()) --4 
select datepart(Month,getdate()) --4 select Month(时间字段名) --4

4,获取当前日期

select datename(day,getdate()) --05 
select datename(d,getdate()) --05 
select datename(dd,getdate()) --05select datepart(dd,getdate()) 5 
select datepart(dd,getdate()) 5 
select datepart(day,getdate()) 5 select day(时间字段名)

5,获取当前年月

select CONVERT(varchar(6),GETDATE(),112) --201804 
select CONVERT(varchar(7),GETDATE(),120) --201804

6,获取当前年月日

select CONVERT(varchar(8),GETDATE(),112) --20180423 
select CONVERT(varchar(10),GETDATE(),120) --2018-04-23

字符串转日期:

select CONVERT(datetime,'2018-04-23',20)

mysql日期和字符相互转换方法

date_format(date,'%Y-%m-%d') -------------->oracle中的to_char();

TO_CHAR(date,'yyyy')=1987 替换成

date_format(date,'%YYYY')=1987,注意是大写的Y,还加了%

str_to_date(date,'%Y-%m-%d') -------------->oracle中的to_date();

http://www.lryc.cn/news/531713.html

相关文章:

  • 【单层神经网络】softmax回归的从零开始实现(图像分类)
  • 使用开源项目:pdf2docx,让PDF转换为Word
  • 保姆级教程Docker部署KRaft模式的Kafka官方镜像
  • ChatGPT提问技巧:行业热门应用提示词案例--咨询法律知识
  • openRv1126 AI算法部署实战之——Tensorflow模型部署实战
  • STM32 TIM定时器配置
  • 51单片机 05 矩阵键盘
  • SSRF 漏洞利用 Redis 实战全解析:原理、攻击与防范
  • kubernetes学习-配置管理(九)
  • python 语音识别
  • 一文速览DeepSeek-R1的本地部署——可联网、可实现本地知识库问答:包括671B满血版和各个蒸馏版的部署
  • [mmdetection]fast-rcnn模型训练自己的数据集的详细教程
  • 1. Kubernetes组成及常用命令
  • linux下ollama更换模型路径
  • 本地Ollama部署DeepSeek R1模型接入Word
  • 【自学笔记】Git的重点知识点-持续更新
  • [EAI-028] Diffusion-VLA,能够进行多模态推理和机器人动作预测的VLA模型
  • 实现数组的扁平化
  • 登录认证(5):过滤器:Filter
  • pytorch实现门控循环单元 (GRU)
  • Word List 2
  • 机器学习常用包numpy篇(四)函数运算
  • CSS in JS
  • TCP 丢包恢复策略:代价权衡与优化迷局
  • 面经--C语言——内存泄漏、malloc和new的区别 .c文件怎么转换为可执行程序 uart和usart的区别 继承的访问权限总结
  • Denavit-Hartenberg DH MDH坐标系
  • 力扣动态规划-20【算法学习day.114】
  • 计算机视觉-边缘检测
  • 文字加持:让 OpenCV 轻松在图像中插上文字
  • 掌握 HTML5 多媒体标签:如何在所有浏览器中顺利嵌入视频与音频