请教一个关于时间段的算法,最好是有现成的函数

问题描述

小弟正在做一个质量考评系统,遇到了个时间段上的算法的问题,问题如下:当用户登入进去后,得到当时的日期,现在自定义每月X号进行统计,如果当前日期小于X号,得到上个月X号到当前日期的时间段,如果大于X号,得到当前月X号+1到当前时间的时间段

解决方案

解决方案二:
我感觉只要利用函数提取出年,月,日进行比较就行,你看一下有你需要的吗:http://blog.csdn.net/hhxxcj/archive/2009/01/15/3785913.aspx
解决方案三:
楼上的,但是基本函数,我知道,我是问有没的现成的算法,这算法需求应该很普遍
解决方案四:
大大们帮帮我撒
解决方案五:
引用楼主linran625的帖子:

小弟正在做一个质量考评系统,遇到了个时间段上的算法的问题,问题如下:当用户登入进去后,得到当时的日期,现在自定义每月X号进行统计,如果当前日期小于X号,得到上个月X号到当前日期的时间段,如果大于X号,得到当前月X号+1到当前时间的时间段

好像有个whencase的语句,再结合selectdatepart("d",getdate())<20可以解决,我忘了怎么写了,
解决方案六:
为什么是小于20,,,
解决方案七:
有没的那个大哥回答小弟一下啊,有没的现成的函数,貌似这是很常见的功能啊,
解决方案八:
这是个体力活呵!!要判断的东西太多,跨年,跨月等等!!下面给一个不跨年也不跨月的算法,供楼主参考:DateTimedt=DateTime.Today;DateTimedt1;intX=15;if(dt.Day>X)dt1=Convert.ToDateTime((dt.Year.ToString()+"-"+(dt.Month-1).ToString()+"-"+X.ToString()));elsedt1=Convert.ToDateTime((dt.Year.ToString()+"-"+dt.Month.ToString()+"-"+(X+1).ToString()));Response.Write(dt1);
解决方案九:
不跨年,不跨月。。。有什么用阿。难道没人在以前的项目中解决这问题吗
解决方案十:
还是没的人回答我啊??
解决方案十一:
现成的函数?好象这都可以自己写的吧?
解决方案十二:
引用8楼linran625的回复:

不跨年,不跨月。。。有什么用阿。难道没人在以前的项目中解决这问题吗

可能跨年,一定跨月,这没有什么现成的函数,需要自己做些比较,其实是简单的,你已经知道了所求的这个时间段的开始日期或结束日期,要求另一个而已。只要比较一次就知道是要取上月X号还是取当月X+1号
解决方案十三:
up
解决方案十四:
根据日期判断一下范围,直接做日期的比较就好了吧~
解决方案十五:
比较一下就可以得出要取上月号还是取当月号
解决方案:
select*fromT1wherecasewhendatepart("d",getdate())<20thenmydateelsedatepart("d",mydate)+1endmydate是字段
解决方案:
直接在sql传时间条件
解决方案:
估计没的人能回答了

时间: 2024-09-16 06:06:02

请教一个关于时间段的算法,最好是有现成的函数的相关文章

算法 选择排序-请教一个选择排序的算法问题

问题描述 请教一个选择排序的算法问题 你好, 我刚刚开始接触JAVA, 问一个选择排序的问题. private static void SelectionSort (int[] arr) { for(int i=0; i for(int j=i+1;j if (arr[i] > arr[j]) { int m; m = arr[i]; arr[i] = arr[j]; arr[j] = m; } } } } 这个方法正确,但是交换次数多了,所以我想改进一下. private static voi

sql-求助:请教一个SQL语句的算法

问题描述 求助:请教一个SQL语句的算法 业务逻辑:在财务中,在一个结算周期内的结算金额没有达到结算限额,则此次不做结算,将此次结算金额累计到下一个结算周期内结算,直到满足结算限额才结算.其中每一个合同的计算限额不同. 举例:已知的合同号001的结算限额为200 ,合同号002的结算限额为300 合同号A 结算日B 结算金额C 想得到的结果D 001 1.1 100 0 001 2.1 110 210 001 3.1 120 0 001 4.1 130 250 001 5.1 140 0 001

请教一个穷举的算法:)列出字符串

问题描述 问题描述:现在想从ABCD四个字符想穷举后得到:ABCDAAABACADAAAAABAACAADABAABBABCABDACAACBACCACDADAADBADCADD.....DDDDD等等,不计各个位数,但最长的长度为5即DDDDD,求出各种字符组合.请教高手指点:) 解决方案 解决方案二:四进制!!!代码就不用写了吧解决方案三:请问要怎么做四进制呢?还有要是如果字符更多,穷举的长度也变长呢?请教:)解决方案四:又是一个全排列问题.解决方案五:楼上的有好招么?请教:)解决方案六:[

赋值-请教一个php自由增减的小算法。

问题描述 请教一个php自由增减的小算法. $i在0~30 的时候,$j是自由增减的,$i==30的时候,$j的值也一定要自由增减到30,不要直接就赋值30,这个算法怎么写呢? 解决方案 问题问的不是很清楚,$j自由增减是如何自由增减呢? 算法大体是这样: 1.先判断$i的值,是否在0~30里面 2.如果$i在0~30里面,$j自由增加,如果$i ==30,判断$j是否为30,是,结束代码,不是,$j++或$j-- 解决方案二: 我是新手,什么是自由增减呢,是随机增加一个数还是什么?如果是这样可

请教一个算法问题时间复杂度要求是(1)

问题描述 请教一个算法问题时间复杂度要求是(1) 做项目的时候有一个处理大致是这样的:需要每次插入map;每次输入是(1,0),(2,0),(3,0):(2,1),(3,1)...当key是新添加的或者key对应的count大于前一次就要把这个key拿出来,时间复杂度要求是O(1), 请教大家有没有好的方法 解决方案 不可能事件复杂度是1,最低是LogN,不过这个很接近1了.除非你有无限制的内存,然后直接地址映射. 解决方案二: 一个数组中只有0,1,2三个元素,进行排序,要求时间复杂度为O(n

c语言-请教一个C编程 打印输出图像的算法编程

问题描述 请教一个C编程 打印输出图像的算法编程 解决方案 大概就是这样,建立笛卡尔坐标系. 用point()函数里的嵌套for循环来输出每一个字符,然后把代表坐标的i和j传递给getChar()函数通过坐标来决定输出的是什么字符. 解决方案二: char getChar(int x,int y,int n) { if(x<0) x=-x; if(y<0) y=-y; if(x>y) { if(n-x<=2) return 'x'+n-x; else return '0'+n-x-

请教一个应用推荐算法

问题描述 请教一个应用推荐算法 看到百度一个关于应用推荐的算法,算法描述如下: 一种在线应用搜索方法为步骤: 解决方案 比如说,产生一个0-9的随机数,按理说结果为1的可能性为0.1,结果为2也是0.1,等等. 但是我们可以制造一个随机数发生器,产生1的可能性为0.5,产生2的可能性为0.25,-- 这就是不等概率. 不等概率随机数的生成可以通过标准随机数生成算法衍生出来. 比如产生一个0~1的浮点数,那么产生值在0~0.5的概率是0.5,0.5~0.75的概率是0.25,--,据此判断,并且返

后台-请教一个关于网站用户密码保存的问题

问题描述 请教一个关于网站用户密码保存的问题 之前自己做过一个简单的网页有登录注册功能的,但是我是直接将用户注册的名字和密码保存在数据库中,换句话说,我可以在数据库里直接看到用户的密码.当然这只是一个个人简单的小demo,但我想问一下,在实际投入运行的网站中,他们是怎样保存用户的密码的?后台人员能够从数据库中看得到用户的密码吗?如果看不到,那比如我们要修改密码的话,后台又是如何判断我输入的密码是否是原来的密码? 求教一下~谢谢~ 解决方案 一般来说,我们使用哈希(Hash)算法来存储密码. 其中

vc++-请教一个VC++找图的问题

问题描述 请教一个VC++找图的问题 请问下,VC++能找图吗?就是先给定一个图片,然后在指定的地方找这个图片,就像按键 精灵那样一样的. 解决方案 可以,但是算法要自己写,没有现成的函数可以调用 解决方案二: 屏幕截图,然后比较每个像素啊,写一个图片比较的算法,笨点的算法大致思路是,获取被找图第一行像素,然后在屏幕截图上依次比较,找到后是第二行,第三行,,,图形处理可以用第三方图形库,或者用微软在Windows中自带的GDI/GDI+(图形设备接口) 解决方案三: 图片相似度比较,有很多图像处