Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Oracle中如何获取当年第几周、第几天,当月第几周、第几天等

Oracle中如何获取当年第几周、第几天,当月第几周、第几天等

作者头像
崔文远TroyCui
发布于 2021-09-09 03:05:18
发布于 2021-09-09 03:05:18
5.9K02
代码可运行
举报
文章被收录于专栏:远在上海远在上海
运行总次数:2
代码可运行

最近弄有关标签上的日期码DATECODE,遇到了自动生成的问题,这个呢可以在C#程序中根据日期自动生成,也可以通过数据库生成。今天先介绍下数据库生成,这里用Oracle数据库

先来说一下需求:日期格式需要取年的后两位+月份转为A-L+当月第几周,如21I1就是今天的日期码。

相应的Oracle SQl语句如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT TO_CHAR(SYSDATE, 'YY')||
DECODE(TO_CHAR(SYSDATE,'MM'),'01','A','02','B','03','C','04','D','05','E','06','F','07','G','08','H','09','I','10','J','11','K','12','L','MM')||
TO_CHAR(SYSDATE,'W') AS DATECODE FROM DUAL;

可能你会问,这个周是9月份的第二个周了,为啥显示为第1周?

有必要把一些常用的SQl解释下。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT TO_CHAR(SYSDATE, 'w') FROM DUAL; --1个月中的第几周
(从每月1号开始算,日期+6天为每1周结尾)
SELECT TO_CHAR(SYSDATE, 'ww') FROM DUAL; --1年中的第几周(每年11日为第1周开始,日期+6天为每1周结尾)
SELECT TO_CHAR(SYSDATE, 'iw') FROM DUAL; --1年中的第几周(星期一至星期日算1周,且每年的第一个星期一为第1)
SELECT TO_CHAR(SYSDATE, 'd') FROM DUAL; --1周的第几天
SELECT TO_CHAR(SYSDATE, 'day') FROM DUAL; --当前日期是星期几,可设置显示英文还是中文
SELECT TO_CHAR(SYSDATE, 'ddd') FROM DUAL; --1年中第几天
SELECT TO_CHAR(SYSDATE,'q') FROM DUAL; --1年中第几季度
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年9月7日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
DM达梦数据库关于时间日期函数的总结
总结了几点常用的关于日期时间相关的一些函数的用法,有时候可以很方便的帮你解决些棘手问题
用户11147438
2024/06/04
1.2K0
oracle日期时间函数总结
常常写 sql 的同学应该会接触到一些 oracle 的日期时间函数, 比如: 財务软件或者人力资源软件须要依照每年, 每季度, 每月, 甚至每一个星期来进行统计.
全栈程序员站长
2022/07/12
1.5K0
sql基础知识:日期的常用用法
日期操作 select sysdate,add_months(sysdate,12) from dual; -- + 1 year select sysdate,add_months(sysdate,1) from dual; -- + 1 month select sysdate,to_char(sysdate+7,'yyyy-mm-dd HH24:MI:SS') from dual; -- + 1 week select sysdate,to_char(sysdate+1,'yyyy-mm-dd HH2
用户1154259
2018/01/17
9020
matinal:ORACLE日期时间格式化参数详解
格式化日期指的是将日期转为字符串,或将字符串转为日期,下面几个函数可以用来格式化日期
matinal
2023/10/14
6740
简单实用的sql小技巧(第二篇)(r3笔记第86天)
ASCII和CHR 在平时的工作中,可能会在sql或者pl/sql块中嵌入特殊字符,比如空格,回车之类。这个时候可以使用ascii和chr来做字符和ascii码的转换。 比如我们想得到字母a对应的ascii码,可以使用ascii来实现。 SQL> select ascii('a') from dual; ASCII('A') ---------- 97 如果反推,需要根据ascii码值来得到对应的字符,就可以使用chr SQL> select chr(97) from dual; C
jeanron100
2018/03/15
5750
Oracle常用函数
Create Table Test6( id varchar2(30), name varchar2(30), age number(2), s
郑小超.
2018/01/26
2K0
Oracle查询优化-07日期运算
在oracle中,date类型可以直接加减天数,而加减月份要用add_months函数.
小小工匠
2021/08/16
7400
oracle如何格式化日期,Oracle 日期格式化处理汇总[通俗易懂]
2015/04/29 (即返回以’/’分隔符连接的字符串,也可以替换为’^’连接则结果为2015^04^29,也可以替换为’-‘则结果为2015-04-29)
全栈程序员站长
2022/09/05
7.9K0
matinal:Oracle中 to_date()
在Oracle数据库中,Oracle to_date()函数是我们经常使用的函数,下面就为您详细介绍Oracle to_date()函数的用法 to_date()与24小时制表示法及mm分钟的显示:
matinal
2023/10/14
3490
oracle的todate函数的日期格式_oracle limit的用法
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说oracle的todate函数的日期格式_oracle limit的用法,希望能够帮助大家进步!!!
Java架构师必看
2022/09/12
12.1K0
oracle的todate函数的日期格式_oracle limit的用法
Oracle函数 – 日期函数详解
SYSDATE:取得当前的日期和时间,类型是DATE.它没有参数.但在分布式SQL语句中使用时,SYSDATE返回本地数据库的日期和时间.
星哥玩云
2022/08/17
7.7K0
Oracle函数 – 日期函数详解
Oracle学习笔记一
Oracle数据库是数据的物理存储。这就包括(数据文件ORA或者DBF、控制文件、联机日志、参数文件)。其实 Oracle数据库的概念和其它数据库不一样,这里的数据库是一个操作系统只有一个库。可以看作是 Oracle就只有一个大数据库。
Kevin_Zhang
2018/08/20
1K0
Oracle学习笔记一
Oracle日期处理
TRUNC(date)函数返回date当天的时间部分被格式模型fmt截断到指定的单位
WindCoder
2020/02/10
1.3K0
如何统计一段时间内但不包含周六日的所有日期
环境:Oracle 11g 客户咨询问题:统计一段时间内,但是把周六日排除,怎么写SQL?
Alfred Zhao
2019/05/24
1.3K0
Oracle Apex学习:oracle ebs中PLSQL常用时间函数
本文摘自Oracle APEX社区,原文地址:https://www.sqlu.cn/116.html
用户10510205
2023/04/23
1.1K0
Oracle实践|Oracle内置函数之日期与时间函数
Oracle 数据库提供了丰富的内置函数,涵盖数值处理、字符串操作、日期和时间处理、逻辑判断、集合处理、数据分析、数据类型转换等多个方面。下面就随着我一起来学习下这个内置函数吧,有解释不到之处,还望批评指正。
六月暴雪飞梨花
2024/04/29
2.4K5
Oracle实践|Oracle内置函数之日期与时间函数
oracle(1)基础总结
--------------------------------------------------------------------------------------------------------where
Dlimeng
2023/06/27
2960
Oracle 10g日期型函数总结
sysdate 【功能】:返回当前日期。 【参数】:没有参数,没有括号 【返回】:日期 【示例】select sysdate hz from dual; 返回:2008-11-5 add_months(d1,n1) 【功能】:返回在日期d1基础上再加n1个月后新的日期。 【参数】:d1,日期型,n1数字型 【返回】:日期 【示例】select sysdate,add_months(sysdate,3) hz from dual; 返回:2008-11-5,2009-2-5 last_day(d1)
星哥玩云
2022/08/17
6350
Oracle函数
【相近】trunc(x[,y]) 返回截取后的值,用法同round(x[,y]),只是不四舍五入
小小工匠
2021/08/16
4.1K0
Oracle常用SQL查询
业务场景:在报表开发中,只需要每个分组最近的一条数据。例如:某天的明细数据中,可能存在多条记录,只需要该天最后更新的一条记录。
程裕强
2021/11/01
1.5K0
相关推荐
DM达梦数据库关于时间日期函数的总结
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验