1. DECLARE @dtdatetime
  2. SET @dt=GETDATE()
  3.  
  4. DECLARE @number int
  5. SET @number=3
  6.  
  7. --1.指定日期该年的第一天或最后一天
  8. --A. 年的第一天
  9. SELECTCONVERT(char(5),@dt,120)+'1-1'
  10.  
  11. --B. 年的最后一天
  12. SELECTCONVERT(char(5),@dt,120)+'12-31'
  13.  
  14. --2.指定日期所在季度的第一天或最后一天
  15. --A. 季度的第一天
  16. SELECTCONVERT(datetime,
  17. CONVERT(char(8),
  18. DATEADD(Month,
  19. DATEPART(Quarter,@dt)*3-Month(@dt)-2,
  20. @dt),
  21. 120)+'')
  22.  
  23. --B. 季度的最后一天(CASE判断法)
  24. SELECTCONVERT(datetime,
  25. CONVERT(char(8),
  26. DATEADD(Month,
  27. DATEPART(Quarter,@dt)*3-Month(@dt),
  28. @dt),
  29. 120)
  30. +CASEWHENDATEPART(Quarter,@dt) in(1,4)
  31. THEN''ELSE''END)
  32.  
  33. --C. 季度的最后一天(直接推算法)
  34. SELECTDATEADD(Day,-1,
  35. CONVERT(char(8),
  36. DATEADD(Month,
  37. 1+DATEPART(Quarter,@dt)*3-Month(@dt),
  38. @dt),
  39. 120)+'')
  40.  
  41. --3.指定日期所在月份的第一天或最后一天
  42. --A. 月的第一天
  43. SELECTCONVERT(datetime,CONVERT(char(8),@dt,120)+'')
  44.  
  45. --B. 月的最后一天
  46. SELECTDATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,@dt),120)+'')
  47.  
  48. --C. 月的最后一天(容易使用的错误方法)
  49. SELECTDATEADD(Month,1,DATEADD(Day,-DAY(@dt),@dt))
  50.  
  51. --4.指定日期所在周的任意一天
  52. SELECTDATEADD(Day,@number-DATEPART(Weekday,@dt),@dt)
  53.  
  54. --5.指定日期所在周的任意星期几
  55. --A. 星期天做为一周的第1
  56. SELECTDATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-1)%7,@dt)
  57.  
  58. --B. 星期一做为一周的第1
  59. SELECTDATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-2)%7-1,@dt)

SQL获取第一天最后一天的更多相关文章

  1. Sql获取第一天、最后一天

    昨天面试一家公司,上机题目中要求获取每月最后一笔订单.用到了日期的选择性查询,回来在ITeye上找到了这篇文章. 原文: http://new-fighter.iteye.com/blog/17587 ...

  2. java 和 mysql 获取周 星期 的第一天 最后一天 或者 月的 日期(字符串转日期,日期转字符串,日期加减)

    获取周的第一天,最后一天 System.out.println(getStartEndDate("2016-05-01", 1)); 获取星期的第一天和最后一天 System.ou ...

  3. 编程乐趣:C#获取日期所在周、月份第一和最后一天

    原文:编程乐趣:C#获取日期所在周.月份第一和最后一天 写了个小功能,需要用到以周为时间段,于是写了个获取周第一和最后一天的方法,获取月份的第一和最后一天就比较简单了.代码如下: public cla ...

  4. 获取每月第一天最后一天 java

    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); //获取前月的第一天 Calendar cal_1=Ca ...

  5. 【HANA系列】SAP HANA SQL获取当前日期最后一天

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL获取当前 ...

  6. 【HANA系列】SAP HANA SQL获取当前月的第一天

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL获取当前 ...

  7. MYSQL中取当前年份的第一天和当前周,月,季度的第一天/最后一天

    mysql 获取当年第一天的年月日格式:SELECT DATE_SUB(CURDATE(),INTERVAL dayofyear(now())-1 DAY); MySQL里获取当前week.month ...

  8. JS获取当年当月最后一天日期

    <html xmlns="http://www.w3.org/1999/xhtml" > <meta charset="UTF-8"> ...

  9. SQL获取当月天数的几种方法

    原文:SQL获取当月天数的几种方法 日期直接减去int类型的数字 等于 DATEADD(DAY,- 数字,日期) 下面三种方法: 1,日期加一个月减去当前天数,相当于这个月最后一天的日期.然后获取天数 ...

随机推荐

  1. java改单个插入为批量插入

    单条insert into table value() 13W数据需要执行7小时 变成inert into table value(),(),(),(),() inert into table val ...

  2. Canvas组件:画布,可以实现动画操作。

    Module  10 Canvas组件:画布,可以实现动画操作. TextArea:文本域. 在单行文本域中回车会激发ActionEvent. 用CheckBoxGroup实现单选框功能. Java中 ...

  3. 基于物理规则的渲染(PBR)

    为毛我的效果那么挫,我也是按照公式来的 2017 -3 -20

  4. 自定义GridView实现分割线解析

    前两天在些项目的时候碰到常用的GridView要实现一些分割线,之前就是用本方法利用listView和Item的背景颜色的不同线显示分割线.这是最low的一种做法.于是我就简单的写了一个自定义的 Gr ...

  5. MSSQL和MYSQL数据库降权

    在服务器上如果是 system 用户在运行 MySQL ,这个是非常危险的,一旦Mysql 出现漏洞,或被其他模式提权,直接就是 system 权限.所以我们现在要给MySQL降权! 作用:增强服务器 ...

  6. 【问题】Can't load AMD 64-bit .dll on a IA 32-bit platform

    文件下载地址:http://archive.apache.org/dist/tomcat/tomcat-connectors/native/1.2.14/binaries/ 按自己的提示找到32位或者 ...

  7. 在POM配置Maven plugin提示错误“Plugin execution not covered by lifecycle configuration”的解决方案

    eclipse在其POM文件的一处提示出错如下: Plugin execution not covered by lifecycle configuration: org.apache.maven.p ...

  8. java代码理解

    public int maxProfit(int k, int[] prices) {            int pl = prices.length;            int nothin ...

  9. 1.6 flask应用: 代码统计系统

    2019-1-6 15:57:18 今天的是做了一个代码统计的demo 使用了数据库的连接池 参考连接 https://www.cnblogs.com/wupeiqi/articles/8184686 ...

  10. [转] - Weiflow——微博机器学习框架

    Weiflow--微博机器学习框架 本文从开发效率(易用性).可扩展性.执行效率三个方面,介绍了微博机器学习框架Weiflow在微博的应用和最佳实践. 在上期<基于Spark的大规模机器学习在微 ...