获取指定日期的常用前后节点(月初月末周一周末等等)

获取指定日期的常用前后节点(月初月末周一周末等等)
原文:获取指定日期的常用前后节点(月初月末周一周末等等)

注:周节点方面是根据中国习惯,视周一为起,周日为末。

/*---------------------------------
函数:获取某日期的特定起止节点v0.01
Author:AhDung
Update:201305151755
---------------------------------*/
ALTER FUNCTION dbo.FGetSpecialDate_ahdung(@date DATE, @SpcDate VARCHAR(20))
RETURNS DATE AS
BEGIN
IF @SpcDate IN ('YearBeg','YB','NC','年初') RETURN DATENAME(YEAR,@date)+'-01-01'
ELSE IF @SpcDate IN ('YearEnd','YE','NW','年尾','年末') RETURN DATENAME(YEAR,@date)+'-12-31'
ELSE IF @SpcDate IN ('QuarterBeg','QtBeg','QB','JC','季初') RETURN DATENAME(YEAR,@date)+CASE WHEN MONTH(@date)<=3 THEN '-01' WHEN MONTH(@date)<=6 THEN '-04' WHEN MONTH(@date)<=9 THEN '-07' ELSE '-10' END +'-01'
ELSE IF @SpcDate IN ('QuarterEnd','QtEnd','QE','JW','季尾','季末') RETURN DATENAME(YEAR,@date)+CASE WHEN MONTH(@date)<=3 THEN '-03-31' WHEN MONTH(@date)<=6 THEN '-06-30' WHEN MONTH(@date)<=9 THEN '-09-30' ELSE '-12-31' END
ELSE IF @SpcDate IN ('MonBeg','MB','YC','月初') RETURN CONVERT(CHAR(7),@date,120)+'-01'
ELSE IF @SpcDate IN ('MonEnd','ME','YW','月尾','月末') RETURN DATEADD(DAY,-1,CONVERT(CHAR(7),DATEADD(MONTH,1,@date),120)+'-01')
ELSE IF @SpcDate IN ('WeekBeg','WB','ZY','周一') RETURN DATEADD(DAY,2-CASE DATEPART(dw,@date) WHEN 1 THEN 8 ELSE DATEPART(dw,@date) END,@date)
ELSE IF @SpcDate IN ('WeekEnd','WE','ZR','ZM','周日','周末') RETURN DATEADD(DAY,8-CASE DATEPART(dw,@date) WHEN 1 THEN 8 ELSE DATEPART(dw,@date) END,@date)
RETURN @date
END

 

posted on 2014-11-13 20:29 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/4095806.html

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

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

相关文章

DB2在linux安装

linux下安装DB2的详细步骤第一步下载db2v8.1数据包,IBM网站有了,但是要钱了,呵呵第二步把下载下来的包(名称有可能是:DB2_V81_PE_LNX_32_NLV.tar)放进opt目录第三步用命令解压DB2_V81_PE_LNX_32_NLV.tar如下:linux:~#cd /optlinux:/opt # tar -xvf DB2_V81_PE_LNX_32_NLV.tar第…

封送处理您的数据:利用 COM 和 Windows 2000 的高效传输数据的技术

From: http://blog.csdn.net/zhoujianhei/article/details/1844319 摘要 您所选择的数据传输方式在分布式应用程序中是非常重要的。Windows 2000 提供了几种新的特性&#xff0c;可以更加高效地进行数据传输。轻量级的处理程序使得您能够编写智能代理&#xff0c;它们能够缓存结…

Linux:驱动程序直接编译到内核(源自国嵌的视频教学)

引子&#xff1a;前面的文章实现了可加载的内核模块&#xff0c;通过这个内核模块实现对PWM定时器的控制和中断处理程序的注册。这里讨论一下将内核模块直接编译进内核的过程&#xff0c;首先声明来源于国嵌的视频教学。 其实很简单&#xff0c;第一步把冰箱门打开...&#xf…

(转)mysql基础命令

Sql代码 asc 按升序排列 desc 按降序排列 下列语句部分是Mssql语句&#xff0c;不可以在access中使用。 SQL分类&#xff1a; DDL—数据定义语言(CREATE&#xff0c;ALTER&#xff0c;DROP&#xff0c;DECLARE) DML—数据操纵语言(SELECT&#xff0c;DELETE&#xff0c;UPDATE&…

JQuery 对控件的事件操作

JQuery是非常棒的js类库&#xff0c;有丰富的UI库和插件&#xff0c;不过我钟爱他的是他的选择器&#xff0c;感觉其他功能有时跟后台人员距离很远&#xff0c;所以一般我也只使用一下他的选择器。 今天突然对他的事件产生了兴趣&#xff0c;先前也碰到过&#xff0c;也没整理&…

搭建VS2008+OpenCV2.1开发环境

引子&#xff1a;如题&#xff08;非原创&#xff0c;非转载&#xff0c;非翻译&#xff09;。其实本菜鸟很纠结于CSDN博客文章的分类&#xff1a;原创&#xff1b;转载&#xff1b;翻译。菜鸟以博客备忘&#xff0c;首先Google&#xff0c;然后试&#xff0c;最后写博客&#…

repalce

1、replace基本用法 <script>/*要求将字符串中所有的a全部用A代替*/var str "javascript is great script language!";//只会将第一个匹配到的a替换成Aconsole.log(str.replace("a", "A")); // > jAvascript is great script language…

Win8环境下 IIS6部署MVC网站出现的无法显示此网页错误

在Win7环境下做好的网站&#xff0c;新的Win8环境发布出现如下图错误&#xff1a; 解决方法如下&#xff1a; 运行&#xff1a; 转载于:https://www.cnblogs.com/xiashenbin/p/4098274.html

软件质量管理之痛

相信不少软件开发公司都存在质量管理部门。而且&#xff0c;如果一个公司稍微正规的话,一定会使用一个缺陷跟踪软件系统&#xff0c;比如开源的Bugzilla&#xff0c;或是IBM的ClearQuest等等。那质量管理部门是如何跟踪和控制软件质量的呢&#xff1f;毫无疑问&#xff0c;需要…

COM、COM+和DCOM的定义和区别

From:http://zouyou1986.blog.163.com/blog/static/1772625920105461931335/ 解释COM、COM和DCOM的定义和区别&#xff1f; COM是组件对象模型,是实现3/N层应用的基础,它的目的就是组件化,应用程序分层.DCOM是分布式的COM,也就说可以远程的创建,最初它利用远程自动化来实现,用…

OpenCV:SURF算法浅析

引子&#xff1a; 课题需要SURF特征提取算法&#xff0c;在运动中提取摄像头图像中的特征点&#xff0c;并进行跟踪匹配&#xff0c;以此估计运动状态。开始找到了SIFT算法&#xff0c;SIFT特征提取具有极强的适应能力&#xff0c;但运算量稍大&#xff0c;后来就有了SURF特征提…

Codeforces Round #277(Div 2) A、B、C、D、E题解

转载请注明出处&#xff1a; http://www.cnblogs.com/fraud/ ——by fraud A. Calculating Function 水题&#xff0c;判个奇偶即可 1 #include <iostream>2 #include <sstream>3 #include <ios>4 #include <iomanip>5 #include <functio…

Vue 中使用watch监听$route 无效问题

Vue 中使用watch监听$route失效问题&#xff01; 今天在项目操作中发现一个问题&#xff0c;在watch里面监听$route变化&#xff0c;发现并没有监听到&#xff0c;查阅了一些资料最终解决&#xff0c;现写出与大家共同分享&#xff0c;也忘出现此问题的同学也能顺利解决 路由词…

oa 系统后期安装服务

http://www.didibabawu.com/oa.htm

.idl与.odl的区别

From: http://hi.baidu.com/%CD%E6%CA%AF%CD%B7%B5%C4%D0%A1%BA%A2/blog/item/1b9a942fe8cfcf594ec22629.html 1. .odl和.idl在com中的功能相同. 前者是ActiveX中的 后者是ATL中. 可在前者的文件中 用 #import "XXXXX.idl" 的方式包含后者. 反过来没有试过. 2. …

Mac OS X 安装和配置ngrok

一、下载ngrok 到官网下载ngrok: https://ngrok.com/download 二、配置ngrok 进入终端&#xff0c;执行以下命令&#xff1a; open -e .bash_profile 修改.bash_profile&#xff08;以实际安装目录为准&#xff09;&#xff1a; export PATH${PATH}:/Users/xuxiansheng/D…