精华内容
下载资源
问答
  • 分享C#获取当前日期是当年的第几周的方法。...2 /// 查询当前日期是当年第几周,整型数3 /// </summary>4 /// <param name="currentDate">当前日期</param>5 /// <returns>Int...

    分享C#获取当前日期是当年的第几周的方法。

    好用就好。

    1     /// <summary>
    2     /// 查询当前日期是当年第几周,整型数
    3     /// </summary>
    4     /// <param name="currentDate">当前日期</param>
    5     /// <returns>Integer类型</returns>
    6     public static int GetCurrentWeek(DateTime currentDate)
    7     {
    8         try
    9         {
    10             DateTime firstDate = new DateTime(currentDate.Year, 1, 1);
    11             int firstWeek = Convert.ToInt32(firstDate.DayOfWeek); 12             firstWeek = firstWeek.Equals(0) ? 7 : firstWeek;
    13
    14             int currentWeek = Convert.ToInt32(currentDate.DayOfWeek);
    15             currentWeek = currentWeek.Equals(0) ? 7 : currentWeek;
    16             int currentDays = Convert.ToInt32(currentDate.DayOfYear);
    17
    18             int n = (currentDays - 8 + firstWeek - currentWeek) / 7 + 2;
    19
    20             return n;
    21         }
    22         catch (Exception)
    23         {
    24             return 0;
    25         }
    26     }
    27

     

    转载于:https://www.cnblogs.com/alllearning/archive/2009/12/21/1628703.html

    展开全文
  • 一、使用场景:统计每个月份对应各从1号开始计算,最后一按照月份最后一天计算)的数据汇总情况; 二、SQL SERVER查询: declare @date datetime set @date = '2019-05-31' select cast(datepart(mm,@...

    一、使用场景:统计每个月份对应各周(第一周从1号开始计算,最后一周按照月份最后一天计算)的数据汇总情况;

    二、SQL SERVER查询:

    declare @date datetime
    set @date = '2019-05-31'
    select cast(datepart(mm,@date) as varchar(2)) + '月第'
     + cast((datepart(wk,@date) - datepart(wk,convert(varchar(7),@date,120) + '-01') + 1) as varchar(2)) + '周';

    返回结果如下图所示:

    或者使用下方的sql,不用定义变量的方式;
     select cast(datepart(mm,'2019-05-31') as varchar(2)) + '月第'
     + cast((datepart(wk,'2019-05-31') - datepart(wk,convert(varchar(7),'2019-05-31',120) + '-01') + 1) as varchar(2)) + '周'

    返回结果:

    三,然后在统计SQL中可按照ZS进行分组统计需要的结果 

    四、参照网址:https://bbs.csdn.net/topics/391930430

    展开全文
  • 网上查询的方法都是这个: ...如本月的第1天是个周四,那么为个月的5,6,7号是第一次出现,它给出的就是第一,实际上我们理解的应该是第。 /*+====================================================...

    网上查询的方法都是这个:

    SELECT TO_CHAR (p_date, 'W') INTO v_week FROM DUAL;

    它实际上是星期N在当月第几次出现。

    如本月的第1天是个周四,那么为个月的5,6,7号是第一次出现,它给出的就是第一周,实际上我们理解的应该是第二周。

     /*+===============================================================
          *计算日期是当月第几周
         =================================================================+*/
       FUNCTION fn_get_weekday (p_date DATE)
          RETURN NUMBER
       IS
          v_week              NUMBER;
          v_mon_weekday       NUMBER;
          v_current_weekday   NUMBER;
       BEGIN
          --当月1号是周几
          SELECT DECODE (TO_CHAR (TRUNC (p_date, 'MON'), 'd') - 1, 0, 7, TO_CHAR (TRUNC (p_date, 'MON'), 'd') - 1) INTO v_mon_weekday FROM DUAL;

          --当是周几
          SELECT DECODE (TO_CHAR (p_date, 'd') - 1, 0, 7, TO_CHAR (p_date, 'd') - 1) INTO v_current_weekday FROM DUAL;


          IF v_mon_weekday <= v_current_weekday
          THEN
             --月初星期数小于等于当前星期数,直接取
             SELECT TO_CHAR (p_date, 'W') INTO v_week FROM DUAL;
          --DBMS_OUTPUT.put_line (TO_CHAR (p_date, 'yyyy-mm-dd') || ' is week:' || v_week);
          ELSE
             --否则加1
             SELECT TO_CHAR (p_date, 'W') + 1 INTO v_week FROM DUAL;
          --DBMS_OUTPUT.put_line (TO_CHAR (p_date, 'yyyy-mm-dd') || ' is week:' || v_week);
          END IF;

          RETURN v_week;
       END;

    展开全文
  • 3.获取这个月的1号星期几,遍历比这星期数小的map集合中的数组前追加一个空字符串或其他内容,以当前日期所在的小标+1为当月的的第几周 二、实现代码 /** * 获取为当月的第几周 * @param time * @return * @...

    一、设计思路
    1.按顺序遍历这个月的每一天,传入List集合
    2.遍历List集合按照星期存入Map结合
    3.获取这个月的1号是星期几,遍历比这星期数小的map集合中的数组前追加一个空字符串或其他内容,以当前日期所在的下标+1为当月的的第几周

    在这里插入图片描述

    二、实现代码

      /**
         * 获取为当月的第几周
         * @param time
         * @return
         * @throws Exception
         */
        public static int dayOfTheWeek(String time)throws Exception{
            int year,month,day;
            String[] split = time.split("-");
            year=Integer.parseInt(split[0]);
            month=Integer.parseInt(split[1]);
            day=Integer.parseInt(split[2]);
            Calendar c = Calendar.getInstance();
            c.set(year, month-1, 1);
            int lastDay = c.getActualMaximum(Calendar.DAY_OF_MONTH);
            ArrayList<String> list = new ArrayList<>();
            //遍历每个月的每一天
            for (int x=1;x<=lastDay;x++){
                list.add(year+"-"+month+"-"+x);
            }
    
            LinkedHashMap<Integer, ArrayList<String>> map = new LinkedHashMap<>();
            //按照星期依次存入map集合
            for (int i = 7; i > 0; i--) {
                ArrayList<String> arrayList = new ArrayList<>();
                for (String s : list) {
                    int theDayOfTheWeek = getTheDayOfTheWeek(s, "yyyy-M-d");
                    if (theDayOfTheWeek==i) {
                        arrayList.add(s);
                    }
                    map.put(i,arrayList);
                }
            }
            /**
             * 找到1号在哪里得星期,对小于该星期的里的集合前边补空
             */
            for (int i = 1; i < map.entrySet().size(); i++) {
                ArrayList<String> list1 = map.get(i);
                for (String s : list1) {
                    String substring = s.substring(s.lastIndexOf("-") + 1);
                    if (substring.equals("1")) {
    
                        for (Map.Entry<Integer, ArrayList<String>> integerArrayListEntry : map.entrySet()) {
                            int key = integerArrayListEntry.getKey();
                            if (key<i){
                                ArrayList<String> value = integerArrayListEntry.getValue();
                                ArrayList<String> list2 = new ArrayList<>();
                                list2.add("空");
                                for (String s1 : value) {
                                    list2.add(s1);
                                }
                                map.put(key,list2);
    
                            }
                        }
                        break;
                    }
    
                }
    
            }
    
            String nowDay= year+"-"+month+"-"+day;
            /**
             * 遍历该星期下一样日期的下标+1为在这个月的周数
             */
            int theDayOfTheWeek = getTheDayOfTheWeek(nowDay, "yyyy-M-d");
            ArrayList<String> list1 = map.get(theDayOfTheWeek);
            for (int i = 0; i < list1.size(); i++) {
                String s = list1.get(i);
                if (s.equals(nowDay)) {
                    return i+1;
                }
            }
    
            return 0;
    
        }
    

    获取星期几方法

     /**
         * 传入时间获取星期几
         * @param date
         * @return
         * @throws Exception
         */
        public static int getTheDayOfTheWeek(String date,String dateformat)throws Exception{
            SimpleDateFormat f = new SimpleDateFormat(dateformat);
            int[] weekDays = { 7, 1, 2, 3, 4,5, 6 };
            Calendar cal = Calendar.getInstance(); // 获得一个日历
            Date datet = (Date) f.parse(date);
            cal.setTime(datet);
            int w = cal.get(Calendar.DAY_OF_WEEK) - 1; // 指示一个星期中的某天。
            if (w < 0)
                w = 0;
            return weekDays[w];
        }
    
    展开全文
  • 获取当前日期是一个星期的第几天 根据具体的日期的周期计算出周几所在的日期 代码 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String str = "2020-01-01"; Date date = sdf.parse(str); ...
  • 2. SELECT DATEPART(WW,时间字段) as ‘一年内的第几周’ FROM 具体表 Sql Server DATEPART()函数: DATEPART()函数用于返回日期 / 时间的单独部分,比如年、月、日、小时、分钟等等 语法: ...
  • 2.我介绍的这种方式通过Api调用的方式,通过当前日期查询是节假日还是非节假日 http://api.goseek.cn/Tools/holiday?date=" + 日期 data为0则节假日,data为0 则休息日 1为节假日 3.代码 package ...
  • select to_char(TO_DATE('20110101', 'YYYYMMDD'), 'yyyyiw') as week, --oracle求当年的第几周 to_char(TO_DATE('20110102', 'YYYYMMDD'), 'ww') as week2, --oracle求当年的第几周 to_char(TO_DATE('20110101', ...
  • 由于之前自己没怎么接触过如此的计算,一时感觉有些迷茫,直到网上查询了点资料做参考,我这个方法 ,主要用于计算某个时间段属于某年 第几周 及返回当前周的周一 和周日日期。**比如说**: 要计算**2020-01-03~...
  • 小程序中,要求根据日期星期进行预订,默认要求显示当天的排一,可以根据要求,预订后面的日期。 设计一个日期滚动条,点击星期,显示不同的内容。 这里只处理获取星期的方法,查询了一些,没有见,分析写到...
  • 以往我直接指定是第几周,后来测试反映如果直接选择周的话并不知道所选周代表的年月日,而无法最快查询数据,后更改查询条件如下: 指定一个起始年月,根据起始年月计算出第一周的日子,然后在第一周的基础上计算...
  • * 查询一个时间段的总周数和查询当前时间是第几周 * @param start * @param end * @return */ private int[] selectWeekNum(Date start,Date end,int week,int flag){ java.util.Calend...
  • --查询所有数据里面自己的排名第几(下面指 自己在本周所有数据中排名第几) select tt.rn from (select t.*, row_number() over(order by start_time desc) rn from tb_match_phase_user t where t.start...
  • 例题:输入某年某月某日,判断这一天这一年的第几天 程序分析:以2020年8月8日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。 代码如下 #...
  • ORACLE 日期查询

    2010-09-09 02:05:54
    Oracle 日期查询 1、查询当前日期 select sysdate from dual; 2、使用to_char来获取日期的部分参数 YYYY获取当前年 ...DAY获取当前周几 ...D 获取当前本周第几天 ...W 获取当前本月第几周 Q...
  • 查询日期是使用oracle数据库过程中经常要遇到的操作,下文列举了一些oracle查询日期语句的例子,如果您感兴趣的话,不妨一看。 oracle查询日期语句在我们...№1:取得当前日期是本月的第几周 SQL> select to_c
  • ...查询日期是使用oracle数据库过程中经常要遇到的操作,下文列举了一些oracle查询日期语句的例子,如果您感兴趣的话,不妨一看。...oracle查询日期语句在...№1:取得当前日期是本月的第几周 SQL&gt; sel...
  • 日期查询 oracle

    2009-08-03 10:04:00
    取得当前日期是本月的第几周 SQL> select to_char(sysdate,YYYYMMDD W HH24:MI:SS) from dual; TO_CHAR(SYSDATE,YY ------------------- 20030327 4 18:16:09 SQL> select to_char(sysdate,W) from dual; T - 4
  • 工作中遇到查询今日本年的第几周,周几,因公司要周一至周日为一周,所以写了这个小工具。 var DateUtils = { // 获取本周一年中的第几周 周几 getWeekNumber : function(d) { // Copy date so don't ...
  • 查询日期是使用oracle数据库过程中经常要遇到的操作,下文列举...№1:取得当前日期是本月的第几周 SQL&gt; select to_char(sysdate,'YYYYMMDD  W HH24:MI:SS') from dual;   TO_CHAR(SYSDATE,'YY ...
  • 十五进度条

    2016-12-25 22:16:00
    第十五 日期 星期一 星期二 ...假分页是先将所需要的数据全部查询出来(坏处是第一次很慢好处是点击下一页会很快)真分页是只查询需要的那条(比如select * from table limit(0,5))(每...
  • 该实现方式代码写的很low,欢迎提出意见改正! 实现效果: (1)按周查询,选择日期只能从周一开始。...(3)按周查询效果图:横坐标是第几周 (4)按月查询结果图:横坐标是几月 1、引入ec...
  • Oracle取上周一到周末日期的...-- 这样取的 在一第几天,以周日为开始的  select to_char(to_date('20130906','yyyymmdd'),'d') from dual;   --结果:6 注释:2013.09.06周五,为本周的第六天 
  • 代码如下: — Oracle 取上周一到周末的sql — 这样取的 在一第几天,以周日为开始的 select to_char(to_date(‘20130906′,’yyyymmdd’),’d’) from dual; –结果:6 注释:2013.09.06周五,为本周的第...
  • //今天第几天,个英文星期,可以转换成int string a = DateTime.Now.DayOfWeek.ToString(); //今天 //MessageBox.Show(Convert.ToInt32(DateTime.Now.DayOfWeek) + ""); /...
  • Oracle中不同条件的日期查询

    千次阅读 2010-11-03 11:14:00
    select * from mytable where to_char(install_date,'YYYYMMDD') > '20050101'  select * from mytable ... 取得当前日期是本月的第几周 SQL> select to_char(sysdate,'YYYYMMD

空空如也

空空如也

1 2 3 4 5 6
收藏数 116
精华内容 46
关键字:

查询日期是第几周