精华内容
下载资源
问答
  • 有一些场合需要使用周一当做第一天来使用比较方便,国内很多统计数据时按照从本周一到下周一算一周来出。datepart 中第一个参数使用wk,是按照周日作为第一天来计算的。datepart 中第一个参数使用cwk,就是按照周一...

    Sybase默认是把周日当做一周的第一天来设置的。

    有一些场合需要使用周一当做第一天来使用比较方便,国内很多统计数据时按照

    从本周一到下周一算一周来出。

    datepart 中第一个参数使用wk,是按照周日作为第一天来计算的。

    datepart 中第一个参数使用cwk,就是按照周一作为第一天来计算的。

    datepart(date_part, date expression)

    Date part Abbreviation Values

    year yy 1753 – 9999 (2079 for smalldatetime). 0001 to 9999 for date

    quarter qq 1 – 4

    month mm 1 – 12

    week wk 1 – 54

    day dd 1 – 31

    dayofyear dy 1 – 366

    weekday dw 1 – 7 (Sun. – Sat.)

    hour hh 0 – 23

    minute mi 0 – 59

    second ss 0 – 59

    millisecond ms 0 – 999

    calweekofyear cwk 1 – 53

    calyearofweek cyr 1753 – 9999 (2079 for smalldatetime). 0001 to 9999 for date

    caldayofweek cdw 1 – 7

    找个东西还挺费劲,虽然简单,贴出来,后来人不要再费劲找了~

    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14855094/viewspace-681104/,如需转载,请注明出处,否则将追究法律责任。

    展开全文
  • Oracle 第一天

    2021-05-06 07:22:38
    因用户需求,需计算出每周的每一天 找到如下资料(引用网址 : http://www.zhiweinet.com/jiaocheng/2009-04/7009.htm)——日期计算,第n第一天及最后一天是几号。 ===========================================...

    因用户需求,需计算出每周的每一天  找到如下资料

    (引用网址 : http://www.zhiweinet.com/jiaocheng/2009-04/7009.htm)

    ——日期计算,算第n周的第一天及最后一天是几号。     ================================================

    —— ww的算法为每年1月1日为第一周开始,date+6为每一周结尾

    —— 例如20050101为第一周的第一天,而第一周的最后一天为20050101+6=20050107

    —— 公式 每周第一天 :date + 周 * 7 - 7

    —— 每周最后一天:date + 周 * 7 - 1

    你会发现怎么编排格式都会跑掉。

    =========================================================================

    ——日期计算,算第n周的第一天及最后一天是几号。 by keynes 2005.04.29

    =========================================================================

    —— ww的算法为每年1月1日为第一周开始,date+6为每一周结尾

    —— 例如20050101为第一周的第一天,而第一周的最后一天为20050101+6=20050107

    —— 公式 每周第一天 :date + 周 * 7 - 7

    —— 每周最后一天:date + 周 * 7 - 1

    —— 如果以ww格式为主,第1、17周的起迄如下

    127.0.0.1:asdb:WF>select to_date('20050101','yyyymmdd') + 1*7-7,to_date('20050101','yyyymmdd') + 1*7-1 from dual;

    TO_DATE(' TO_DATE('

    --------- ---------

    01-JAN-05 07-JAN-05

    127.0.0.1:asdb:WF>select to_date('20050101','yyyymmdd') + 17*7-7,to_date('20050101','yyyymmdd') + 17*7-1 from dual;

    TO_DATE(' TO_DATE('

    --------- ---------

    23-APR-05 29-APR-05

    Elapsed: 00:00:00.00

    —— 验证如下

    127.0.0.1:asdb:WF>select to_char(to_date('20050422','yyyymmdd'),'ww') as weekn,to_char(to_date('20050423','yyyymmdd'),'ww') as week1,to_char(to_date('20050429','yyyymmdd'),'ww') as week2,to_char(to_date('20050430','yyyymmdd'),'ww') as weekn2 from dual;

    WEEK WEEK WEEK WEEK

    ---- ---- ---- ----

    16 17 17 18

    Elapsed: 00:00:00.00

    127.0.0.1:asdb:WF>

    —— iw的算法为星期一至星期日算一周,且每年的第一个星期一为第一周,

    —— 例如20050101为星期六,所以用iw的算法是前年的53周,而20050103之后才是第一周的开始。

    —— 公式 每周第一天 :next_day(date) + 周 * 7 - 7

    —— 每周最后一天:next_day(date) + 周 * 7 - 1

    —— 如果以iw格式为主,第1、17周的起迄如下

    127.0.0.1:asdb:WF>select next_day(to_date('20050101','yyyymmdd'),'MONDAY')+ 1 * 7 - 7 as first_day,next_day(to_date('20050101','yyyymmdd'),'MONDAY')+ 1 * 7 - 1 as last_day from dual;

    FIRST_DAY LAST_DAY

    --------- ---------

    03-JAN-05 09-JAN-05

    Elapsed: 00:00:00.00

    127.0.0.1:asdb:WF>

    127.0.0.1:asdb:WF>select next_day(to_date('20050101','yyyymmdd'),'MONDAY')+ 17 * 7 - 7 as first_day,next_day(to_date('20050101','yyyymmdd'),'MONDAY')+ 17 * 7 - 1 as last_day from dual;

    FIRST_DAY LAST_DAY

    --------- ---------

    25-APR-05 01-MAY-05

    Elapsed: 00:00:00.00

    127.0.0.1:asdb:WF>

    —— 验证如下

    127.0.0.1:asdb:WF>select to_char(to_date('20050424','yyyymmdd'),'iw') as weekn,to_char(to_date('20050425','yyyymmdd'),'iw') as week1,to_char(to_date('20050501','yyyymmdd'),'iw') as week2,to_char(to_date('20050502','yyyymmdd'),'iw') as weekn2 from dual;

    WEEK WEEK WEEK WEEK

    ---- ---- ---- ----

    16 17 17 18

    Elapsed: 00:00:00.00

    其它:

    ——== 查今天是 "本月" 的第几周

    SELECT TO_CHAR(SYSDATE,'WW') - TO_CHAR(TRUNC(SYSDATE,'MM'),'WW') + 1 AS "weekOfMon" from dual;

    SELECT TO_CHAR(SYSDATE,'W') AS "weekOfMon" from dual;

    ——== 查今天是 "今年" 的第几周

    select to_char(sysdate,'ww') from dual;

    select to_char(sysdate,'iw') from dual;

    附注:

    上文所提之iw及ww格式在doc内解释如下

    IW = Week of year (1-52 or 1-53) based on the ISO standard

    WW = Week of year (1-53) where week 1 starts on the first day of the year and continues to the seventh day of the year.

    =================================================================================

    这里看到计算还是有点复杂,继而又发现 如下网址(http://www.cnblogs.com/shuang/archive/2009/01/06/1370217.html)

    select trunc(sysdate,'month')from dual

    trunc会自动载取当月的第一天

    ++++++++++++++++++++++

    select to_char(trunc(sysdate,'mon'),'yyyymmdd') from dual

    +++++++++++++++++++++

    select trunc(sysdate,'mm') from dual;

    SELECT trunc(add_months(last_day(sysdate)+1,-1),'dd') from dual

    +++++++++++++++++++++++

    想到这里可以使用TRUNC 取当月第一天 ,那么TRUNC 可否取出当前周第一天呢,测试如下:

    SQL> select trunc(sysdate,'ww') from dual;

    TRUNC(SYSDATE,

    --------------

    19-3月 -10

    SQL> select trunc(sysdate,'iw') from dual;

    TRUNC(SYSDATE,

    --------------

    22-3月 -10

    发现使用 TRUNC 是可以取出当前周的第一天的,那现在是知道第几周,如何根据周数取出那周的第一天呢?

    SQL> select trunc(sysdate,'iw')-(to_char(sysdate,'iw')-1 /*1为要计算出的那周*/))*7 from dual;

    TRUNC(SYSDATE,

    --------------

    04-1月 -10

    展开全文
  • --当日日期DECLARE @Today NVARCHAR(100);SET @Today = DATENAME(YEAR, GETDATE()) + '-' + DATENAME(MONTH, GETDATE()) + '-' + DATENAME...--本周第一天与最后一天DECLARE @FirstDay INT, @LastDay INTSET @FirstD...

    --当日日期

    DECLARE @Today NVARCHAR(100);

    SET @Today = DATENAME(YEAR, GETDATE()) + '-' + DATENAME(MONTH, GETDATE()) + '-' + DATENAME(DAY, GETDATE());

    --本周第一天与最后一天

    DECLARE @FirstDay INT, @LastDay INT

    SET @FirstDay = 1

    SET @LastDay = (@FirstDay - 1 + 6) % 7 + 1

    --当日周几

    DECLARE @TodayWeek INT

    SET @TodayWeek = (((@@DATEFIRST - 1) + DATEPART(WEEKDAY, @Today) % 7) + 7 - 1) % 7 + 1

    --计算本周第一天

    DECLARE @DateFirst DATETIME

    SET @DateFirst = @Today + ' 00:00:00'

    SET @DateFirst = DATEADD(WEEKDAY, @FirstDay - @TodayWeek, @DateFirst)

    --计算本周最后一天

    DECLARE @DateLast DATETIME

    SET @DateLast = @Today + ' 23:59:59'

    SET @DateLast = DATEADD(WEEKDAY, @LastDay - @TodayWeek, @DateLast)

    --输出检查

    SELECT @Today AS 当日日期, @TodayWeek AS 今天周几, @FirstDay AS 第一天周几, @LastDay AS 最后一天周几, @DateFirst AS 本周第一天, @DateLast AS 本周最后一天

    对于任意的本周第一天与最后一天还有些 bug,不通用,暂时先不研究了,等后期用到再改

    HIVE 计算指定日期本周的第一天和最后一天

    -- 计算指定日期本周的第一天和最后一天 select day ,dayofweek(day) as dw1 ,date_add( - dayofweek(day)) as Su_s -- 周日_st ...

    【HANA系列】SAP HANA SQL计算某日期是当月的第几天

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL计算某日 ...

    【HANA系列】SAP HANA SQL计算某日期是当年的第几天

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL计算某日 ...

    WPF 本周、本月、本季、本年的第一天与最后一天取法

    lblWeekStart.Content = DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOf ...

    0919MYSQL中取当前周/月/季/年的第一天与最后一天

    http://blog.csdn.net/cleanfield/article/details/41447585 整理后的sql代码,全部可执行 #当年第一天: SELECT DATE_SUB(CUR ...

    php获取当前周的第一天与最后一天

    1 2 3 4 5 6 7 8 9 10 // 当前日期   $sdefaultDate = date("Y-m-d");   // $first =1 表示每周星期一为开始日期  ...

    PHP获取每月第一天与最后一天

    sql server 查询日期中的常用语句, 例如本周第一天, 年内的第几周,有用

    --本周第一天    SELECT DATEADD(Day,1-(DATEPART(Weekday,getdate())+@@DATEFIRST-1)%7,getdate())   --or    s ...

    数据库SQL语句中根据当前日期计算其他日期小结

    问题描述:我们在写存储过程和函数的时候经常会碰到利用当前日期计算出上周开始日期.结束日期,或者计算上个月的开始日期结束日期等问题.最近写了几个存储过程和函数,其中都涉及到了日期计算问题,在这里简单做一 ...

    随机推荐

    或许是 Nginx 上配置 HTTP2 最实在的教程了

    导读 从 2015 年 5 月 14 日 HTTP/2 协议正式版的发布到现在已经快有一年了,越来越多的网站部署了 HTTP2,HTTP2 的广泛应用带来了更好的浏览体验,只要是 Modern 浏览器 ...

    Codeforces Gym 100187K K. Perpetuum Mobile 构造

    K. Perpetuum Mobile Time Limit: 2 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100187/pro ...

    JS图片加载失败显示默认图片

    代码如下:

    展开全文
  • 根据 日期计算属于第几周,见代码,重点是红色加粗代码,如果日期... * 根据日期计算属于第几周(周日一周第一天)  * @param date 格式 yyyy-MM-dd dispflg:0 返回yyyyww;1 返回yyyy年ww周  * @throws ParseEx

    根据  日期计算属于第几周,见代码,重点是红色加粗代码,如果日期是下一年的第一周的时候的解决方案,如果谁有更好的方法,请不吝赐教



    /**

         * 根据日期计算属于第几周(周日是一周的第一天)
         * @param date 格式 yyyy-MM-dd dispflg:0 返回yyyyww;1 返回yyyy年ww周
         * @throws ParseException
         * return 返回空表示异常,或日期为空
         */
        public static String getWeekOfYear_Sunday_Normal(String date, String pattern, String dispflg) {
            if (date == null)
                return "";
            if (pattern == null)
                pattern = DATE_FORMAT_YYYY_MM_DD;
            try {
                SimpleDateFormat df = new SimpleDateFormat(pattern);
                Calendar cal = Calendar.getInstance();
                cal.setFirstDayOfWeek(Calendar.SUNDAY); // 设置每周的第一天为星期日
                //cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);// 每周从周一开始
                cal.setMinimalDaysInFirstWeek(1); // 设置每周最少为1天
                cal.setTime(df.parse(date));
                int year = cal.get(Calendar.YEAR);//获得当前年
                int month = cal.get(Calendar.MONTH);//获得当前月
                int week = cal.get(Calendar.WEEK_OF_YEAR);//获得周数
                 if (month + 1 == 12 && week == 1) {
                    year += 1;//如果当前月是12月并且周数是1,作为明年的第一周
                }

                if (dispflg.equals("0")) {
                    return year + "" + (week < 10 ? "0" + week : week);//返回"yyyyww"格式
                } else if (dispflg.equals("1")) {
                    return year + "年" + (week < 10 ? "0" + week : week) + "周";//返回"yyyy年ww周"格式
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            return "";
        }
    展开全文
  • 下面显示的输出,本周周一,当它是个星期或星期星期: $date = '2015-03-16'; // monday echo date("Y-m-d", strtotime('monday this week', strtotime($date))), "\n"; echo date("Y-m-d", strtotime('...
  • 使用mysql查询当前时间的周一、周日、本月第一天和最后一天其实现在已经有了很多博客写出了在mysql中查询当前周一的语句,不知道这个博文都是copy的还是都只测试了几个数据,反正我用周日的日期来查就会有问题,...
  • //国外一周是从周日到周六来的 SELECT * FROM ordersrecord WHERE YEARWEEK(ordertime,1) =YEARWEEK(date_sub(curdate(),interval 7 day),1) 查询当前月份的数据 select name,submittime from enterprise where ...
  • //这种输出的是上个星期周日的日期,因为老外那边把周日当成第一天 cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); //增加一个星期,才是我们中国人理解的本周日的日期 cal.add(Calendar.WEEK_OF_YEAR, 1); ...
  • 第一种方式:Date InputDate = new SimpleDateFormat("yyyyMMdd").parse(String.valueOf(20140101));Calendar cDate = Calendar.getInstance();cDate.setFirstDayOfWeek(Calendar.MONDAY);cDate.setTime(InputDate);...
  • 使用PHP strtotime()函数可以获取一周第一天。此函数返回默认时间变量timestamp,然后使用date()函数将时间戳日期转换为可理解的日期。strtotime()函数: strtotime()函数通过解析时间字符串返回时间戳中的结果。...
  • echo " 这周第一天:" . date("Y-m-d", mktime(0, 0, 0, date("m"), date("d") - date("w") + 1, date("Y"))); //date('Y-m-d', strtotime("this week")) echo " 这周最后一天:" . date("Y-m-d", mktime(0, 0, 0, ...
  • //今年 NSInteger weekday=[comps weekday];//注意 周日 是 “1”,周一是 “2” NSInteger theWeekDay=weekday-1; NSDate nowDate=[[NSDate alloc] init]; if (theWeekDay==0) {//今天是星期 ...
  • public void Init() { string Month =GetDateTimeWeekFirstDayMon(); string Day = GetDateTimeWeekLastDaySun(); ... /// 获取本周的第一天 周一为第一天 /// </summary> /// <re.
  • moment.js获取一周第一天

    千次阅读 2020-06-16 20:04:49
    // 设置为本周的第一天上午 12:00 moment().startOf('isoWeek'); // 根据 ISO 8601 设置为本周的第一天上午 12:00 文档写的不对,都是返回的 00:00 这里有个问题点,原始时间,每周第一天为周日,比如上图,6月...
  • 2019-01-04 回答计算一年有多少个的思路:首先,每年至少有52个,至多有53个,取决于周一是在哪年(也可以定位周日,这个是由需求决定的),以下是详细代码,其中判断哪一天决定了当周是属于哪一年的逻辑是写在...
  • 并且把元旦这一天所在的这一周当作新年第一周 1代表:把周一当作每周的第一天,一年有54周,yearweek取值范围为0~53,并且把元旦当天+3天所在的这一周当作新年第一周 2代表:把周日当作每周的第一天,一年有53周,...
  • Java获取本月第一天是本周第几天

    千次阅读 2017-06-23 11:21:30
    Calendar.DAY_OF_WEEK 今天是本周第几天 将几天设为本月第一天 cld.set(Calendar.DATE, 1);
  • 前言今天又遇到很坑的问题了,因为外国友人每一周的起始日期是周日,跟我们的不一样,我们每一周的起始日期是星期一,这样导致我要用mysql统计一周的数据的时候,对于我们来说,查询的记录包括:上周日的记录+本周的...
  • 西方应用是周日是first day,中国人思维则为,周日是最后一天。其实,只需要计算到周一,就可直接获得周日。<2>应用实例--Sundayselect to_date(next_day(to_date('2015-02-09 22:00:00', 'yyyy-mm-dd hh24:mi...
  •  // 本周日的日期  date.setDate(date.getDate() + 6);  var end = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() + " 23:59:59";    $scope.registDate(begin,end); }  ...
  • 外国的文化习惯和外国的代码设计其实还是有很大差别的,毕竟代码是全球的人都要用的,是不能强行说偏袒某一方的(不像现在的漂亮国,扯远了),只能说代码里唯一借鉴了外国的只是用字母而已,其实代码设计是个逻辑...
  • 同时回顾了一下js日期对象的知识,做个总结先上代码:1 /**2 * 获取指定日期的第一天、月的第一天、季的第一天、年的第一天3 * @param date new Date()形式,或是自定义参数的new Date()4 * @returns 返回值为...
  • 我要获取下周的周一和周日的日期,代码已经写好,除了周日我的代码都是好使的,但是我在周日获取的日期却是下下周的日期段,原因是因为它认为周日是这第一天,如何解决这种情况。...我要获取下周的周一和周日的...
  • } /** * 取得当前日期所在第一天 * * param date * return */ public static String getFirstDayOfWeek() { Calendar calendar = Calendar.getInstance(); calendar.setFirstDayOfWeek(Calendar.SUNDAY); ...
  • PHP减去一周周日

    2021-05-08 06:50:49
    PHP减去一周周日我有一个函数可以用来标记骑自行车上每公里骑行的周数总和的图表的x轴。它从今天的日期开始计算(或应该工作),从数组传递零周日或1,2,3等等。我使用的PHP版本5.6.19,这是我的代码:在Model:public ...
  • How can I calculate every week date? For example, this week is:Monday - Sunday7 June, 8 June, 9 June, 10 June, 11 June, 12 June, 13 June解决方案I guess this does what you want:// Get calendar set to ...
  • 最近再弄日历相关的东西,然后就在获取每月... * 一周第一天 * * @param localDate 当地日期 * @return {@link LocalDate} */ public static LocalDate firstDayOfWeek(LocalDate localDate){ return localD
  • mysql查询从周一开始本周第一天

    千次阅读 2018-11-02 18:03:39
    查询本周所有的数据(本周第一天是周一) SELECT * FROM task WHERE YEARWEEK(date_...查询本周所有的数据(本周第一天周日) SELECT * FROM task WHERE YEARWEEK(date_format(时间字段,'%Y-%m-%d')) = YE...
  • import java.util.Calendar; import java.util.Date; /** * 日期工具类 * * @author broucetrong * @version V1.0 * @since 2018/6/25 */ public class DateUtils { ... * 获得入参日期下周的日期 * *...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 25,915
精华内容 10,366
关键字:

周日算一周的第一天