计算时间列所在年的周序号

需求描述

需求:对EMP表里员工KING和SMITH的hiredate入职时间差,基于生成的日期算每天所在的周,相对于年.

解决方法:通过DATE_FORMAT函数来完成.

注: 数据库数据集SQL脚本详见如下链接地址

员工表结构和数据初始化SQL脚本

SQL代码

-- Mysql:
SELECT B.ename b_Ename,B.HIREDATE b_hiredate,A.ename a_Ename, A.HIREDATE a_hiredate
,DATE_ADD(A.hiredate,INTERVAL pos DAY) date_Seq
,DATE_FORMAT(DATE_ADD(A.hiredate,INTERVAL pos DAY),'%U') AS weekno_Year
FROM emp A,emp B,(SELECT i-1 AS pos FROM tb_incr) seq
WHERE A.ename = 'SMITH' AND B.ename = 'KING' AND seq.pos <=DATEDIFF(B.HIREDATE,A.HIREDATE)

:mysql里也可以通过yearweek函数来实现

-- mysql
SELECT
YEARWEEK(now()) 'yearWeek',
SUBSTRING(YEARWEEK(now()),1,4)'year',
SUBSTRING(YEARWEEK(now()),5,2) 'weekOfyear'

执行结果

-- SQL Server
SELECT B.ename b_Ename,B.HIREDATE b_hiredate,A.ename a_Ename, A.HIREDATE a_hiredate
,DATEADD(DAY,seq.pos,A.HIREDATE) AS date_Seq
,DATEPART(WK,DATEADD(DAY,seq.pos,A.HIREDATE)) AS weekno_Year
FROM emp A,emp B,(SELECT number AS pos FROM master.[dbo].[spt_values] WHERE type = 'P') seq
WHERE A.ename = 'SMITH' AND B.ename = 'KING' AND seq.pos <= DATEDIFF(DAY,A.HIREDATE,B.HIREDATE)

处理时间_5_计算时间列所在年的周序号相关推荐

  1. 处理时间_4_计算时间列所在的周的序号

    计算时间列所在的周的序号 需求描述 需求:对EMP表里员工KING和SMITH的hiredate入职时间及所在周序号. 解决方法:通过DATEDIFF函数来完成. 注: 数据库数据集SQL脚本详见如下 ...

  2. 处理时间_1_对时间列进行加减

    对时间列进行加减 需求描述 需求:对EMP表里员工编号为7369的hiredate按照天.月.年各加. 解决方法:通过DATEADD函数来完成. 注: 数据库数据集SQL脚本详见如下链接地址 员工表结 ...

  3. 处理时间_3_计算两个时间列工作日差值

    计算两个时间列工作日差值 需求描述 需求:对EMP表里员工KING和SMITH的hiredate入职时间差,这里单位是天且是工作日时间,即周末不计算在内. 解决方法:通过DATEDIFF函数来完成. ...

  4. 处理时间_2_计算两个时间列的差值

    计算两个时间列的差值 需求描述 需求:对EMP表里员工KING和SMITH的hiredate入职时间差,这里单位是分钟.小时.天.周.月.年. 解决方法:通过DATEDIFF函数来完成. 注: 数据库 ...

  5. oracle中时间差转秒,oracle计算时间秒数差

    --计算plsql处理时间差 --qzq declare time1 timestamp; --开始时间 time2 timestamp; --结束时间 sum1 number(9); --时间差(s ...

  6. 计算一列中某个值的个数

    忆之独秀    https://blog.csdn.net/lavorange/article/details/25004181 这两天在参加阿里大数据竞赛,进入第二赛季要用到不少的SQL语句,现在才 ...

  7. jquery计算表格列,求和

    jquery计算表格列,求和 有时候,需要统计网页上数据总数,系统没有提供该功能,需要手动计算,于是设计了这段代码 效果展示: 核心代码: $(function() {var totalRow = 0 ...

  8. pandas计算滑动窗口中的最小值实战(Rolling Minimum in a Pandas Column):计算单数据列滑动窗口中的最小值、计算多数据列滑动窗口中的最小值

    pandas计算滑动窗口中的最小值实战(Rolling Minimum in a Pandas Column):计算单数据列滑动窗口中的最小值.计算多数据列滑动窗口中的最小值 目录

  9. pandas计算滑动窗口中的最大值实战(Rolling Maximum in a Pandas Column):计算单数据列滑动窗口中的最大值、计算多数据列滑动窗口中的最大值

    pandas计算滑动窗口中的最大值实战(Rolling Maximum in a Pandas Column):计算单数据列滑动窗口中的最大值.计算多数据列滑动窗口中的最大值 目录

最新文章

  1. ERROR: Unable to load class 'org.gradle.api.internal.component.Usage'.
  2. linux shell nr,awk中NR和FNR的区别小结和实例演示
  3. css border制作小三角形状及应用(兼容IE6)
  4. swift_003(Swift的?和!)
  5. if else和switch的效率
  6. 微信小程序把wx.showToast的文字提示长度增加的方法
  7. 安装了ros后Python3 调用import cv2报错解决办法:
  8. 数据切分——Atlas介绍
  9. java打印tomcat内存溢出_tomcat内存溢出问题监控工具
  10. 如何在MySQL中设置外键约束
  11. Vuex的API文档
  12. vb程序设计基础笔记
  13. udp push java ddpush_DDPush首页、文档和下载 - 任意门推送 - OSCHINA - 中文开源技术交流社区...
  14. QCC3020 单地址量产项目 功耗数据 电流测试数据
  15. 关于 Spring 中 getBean 的全流程源码解析
  16. ip获取所在城市名称接口-JAVA
  17. rabbitmq 默认用户和密码
  18. 介绍一个牛逼的Github项目
  19. 使用mockplus设计大屏原型
  20. 诊断公司的CRO业务简述

热门文章

  1. boost::detail::sp_typeinfo_相关的测试程序
  2. boost::regex模块实现将 C++ 文件转换为语法突出显示的 HTML的测试程序
  3. boost::mpl模块实现count相关的测试程序
  4. boost::mp11::mp_rename相关用法的测试程序
  5. boost::hana::insert用法的测试程序
  6. boost::intrusive::stateful_value_traits用法的测试程序
  7. boost::graph模块实现分布式压缩稀疏行图类型的测试
  8. boost::gil::matrix3x2用法的测试程序
  9. boost::fusion::fold用法的测试程序
  10. boost::callable_traits的is_const_member的测试程序