精华内容
下载资源
问答
  • 这是我写的一个查询: SELECT DATE_FORMAT(FROM_UNIXTIME(clock), "%U") AS week count(*) as cnt FROM logs WHERE DATE_FORMAT(FROM_UNIXTIME(clock), "%Y") = '2010' GROUP BY week 这给出了这样的结果: | week |...

    我有一个数据库表,看起来像这样:

    | id | clock | info

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

    | 1 | 1262556754 | some info

    | 2 | 1262556230 | some other info

    | 3 | 1262556988 | and another

    | 4 | 1262555678 | and some more

    写入此日志时,它包含日志记录和unix时间戳.我需要的是每周报告一次,每周有多少日志记录.这是我写的一个查询:

    SELECT

    DATE_FORMAT(FROM_UNIXTIME(clock), "%U") AS week

    count(*) as cnt

    FROM logs

    WHERE DATE_FORMAT(FROM_UNIXTIME(clock), "%Y") = '2010'

    GROUP BY week

    这给出了这样的结果:

    | week | cnt

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

    | 1 | 55

    | 2 | 134

    | 4 | 765

    | 20 | 65

    大!但我想看到的是日期范围如2010年2月8日00:00 – 2010年2月15日00:00,所以我的结果集如下所示:

    | day_start | day_end | cnt

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

    | 08 Feb 2010 00:00 | 15 Feb 2010 00:00 | 55

    | 15 Feb 2010 00:00 | 22 Feb 2010 00:00 | 76

    | 22 Feb 2010 00:00 | 01 Mar 2010 00:00 | 756

    有没有办法做到这一点?

    展开全文
  • python 查询周数 week number

    千次阅读 2018-04-04 11:18:39
    python里面查询某一天所处的周数week number时,有比较多的方法,自己觉得下面这个方法特别棒,在一些方面的处理非常合理。每年的最后一天必然是12月31日,是12月的最后一天,但这天不一定是这年最后一个周的最后一...

    python里面查询某一天所处的周数week number时,有比较多的方法,

    自己觉得下面这个方法特别棒,在一些方面的处理非常合理。

    每年的最后一天必然是12月31日,是12月的最后一天,但这天不一定是这年最后一个周的最后一天,不一定是周日。

    如果去年最后一天是周中某一天,那么今年第一天是连续着去年最后一个周的。

    matlab里面的week number函数将每年的第一天的week number都设置成1,不管这第一天是不是周一,还是除了周一的某一天。这个在某些问题,比如,获得某个时间序列的每周的最后一天和第一天时候就有难题。但是python很好的化解了这个问题。

    python里面,如果今年的第一天不是周一,那么这第一天依然是去年最后一个周的延续,week number都设置成0。当今年的第一个周一出现时候,这天开始的未来7天的week number才是1。

    而且在python这个函数里面,周一是某个周的第一天,而不像matlab,除非专门设置,不然周日才是一个周的第一天。

    2018年1月1号是周一,所以这天的week number就是1,而2015、2016、2017年的第一天都不是周一,所以这天到当年的周日,其week number都是0。

    那么2015-2017年的最后一天,12月31号的周数肯定是52,而2018年的是53。因为一年的总天数是365或者366,就是52个整周加上1天或者2天。

    虽然每年的最后一天和第一天的数字不一样,但是week number的序列的长度是一样的,比如2015-2017年间是00-52,而2018年是01-53,长度都是53。matlab那样的设置,week number的序列的长度,每年都是不一样的。

    看到00的瞬间,哈哈,觉得爱上python了。LIFE IS SHORT, I USE PYTHON.

    strftime函数,W是问week number, A是查周几的,w返回的是周几的数字,大小写W可能容易混淆。

    import pandas as pd
    datesList = ["2015-01-01", "2015-01-04","2015-01-05","2015-12-31", "2016-01-01", "2016-12-31", "2017-01-01", "2017-12-31", "2018-01-01", "2018-01-07", "2018-01-08", "2018-12-31"]
    datesPD = pd.DataFrame(datesList)
    datesPD[1] = pd.to_datetime(datesList).strftime("%W") #所处的周是今年第几周
    datesPD[2] = pd.to_datetime(datesList).strftime("%A") #查询周几,返回英文
    datesPD[3] = pd.to_datetime(datesList).strftime("%w") #查询周几,返回数字
    datesPD[4] = ["", "周日不是第一天","周一是第一天", "最后一天是第52周的","", "", "", "", "第一天是周一", "", "", "最后一天是第53周的"]
    datesPD.columns = ["dates", "weekNum", "weekDay", "weekDayNum","NOTE"]
             dates weekNum   weekDay weekDayNum        NOTE
    0   2015-01-01      00  Thursday          4            
    1   2015-01-04      00    Sunday          0     周日不是第一天
    2   2015-01-05      01    Monday          1      周一是第一天
    3   2015-12-31      52  Thursday          4  最后一天是第52周的
    4   2016-01-01      00    Friday          5            
    5   2016-12-31      52  Saturday          6            
    6   2017-01-01      00    Sunday          0            
    7   2017-12-31      52    Sunday          0            
    8   2018-01-01      01    Monday          1      第一天是周一
    9   2018-01-07      01    Sunday          0            
    10  2018-01-08      02    Monday          1            
    11  2018-12-31      53    Monday          1  最后一天是第53周的


    展开全文
  • 概述做项目中,碰到了个难题:想要根据年份和第几周...根据年份和周数获取该周第一天的日期-- 自定义函数delimiter //drop function if exists FUN_GET_FIRSTDATE_OF_WEEK;create function FUN_GET_FIRSTDATE_OF_...

    概述

    做项目中,碰到了个难题:想要根据年份和第几周获取该周的周一和周日的时间。找了下MySQL中的日期函数,发现没有。既然没有轮子用,那我们自己造个轮子。

    根据年份和周数获取该周第一天的日期

    -- 自定义函数

    delimiter //

    drop function if exists FUN_GET_FIRSTDATE_OF_WEEK;

    create function FUN_GET_FIRSTDATE_OF_WEEK(years int,weeks int) returns varchar(32)

    begin

    declare days int default 0;

    if weeks = 1 then

    return concat(years,'-01-01');

    elseif weeks >1 then

    select dayofweek(concat(years,'-01-01'))-2 into days;

    return makedate(years,weeks*7-days-6);

    else

    return null;

    end if ;

    end//

    delimiter ;

    -- 函数调用

    select FUN_GET_FIRSTDATE_OF_WEEK(2019,8)

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    注意:第一周的第一天存在跨年的问题,一般都是取1月1号

    根据年份和周数获取该周最后一天的日期

    -- 自定义函数

    delimiter //

    drop function if exists FUN_GET_LASTDATE_OF_WEEK;

    create function FUN_GET_LASTDATE_OF_WEEK(years int,weeks int) returns varchar(32)

    begin

    declare days int default 0;

    if weeks * 7 >= 365 then

    return concat(years,'-12-31');

    elseif weeks *7 < 365 and weeks *7 >0 then

    select dayofweek(concat(years,'-01-01'))-2 into days;

    return makedate(years,weeks*7-days);

    else

    return null;

    end if;

    end//

    delimiter ;

    -- 函数调用

    select FUN_GET_LASTDATE_OF_WEEK(2020,1)

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    注意:年份的最后一周不一定是周日,直接取12月31号即可

    展开全文
  • Oracle查询当前日期对应周数

    千次阅读 2019-04-28 15:52:36
    在Oracle中查询当前日期对应的SQL oracle常见的日期格式有Date & Timestamp 其中Data常用的格式为:YYYY-MM-DD HH24-MI-SS 其中Timestamp常用的格式为:YYYY-MM-DD HH24-MI-SS.FFF 上述两种日期格式最明显的差异...

    在Oracle中查询当前日期对应的SQL

    oracle常见的日期格式有Date & Timestamp
    其中Data常用的格式为:YYYY-MM-DD HH24-MI-SS
    其中Timestamp常用的格式为:YYYY-MM-DD HH24-MI-SS.FFF

    上述两种日期格式最明显的差异为TimeStamp格式更精确(精确至秒后三位小数)

    回到标题,如何将当前日志转换为周数
    常见的用法为 TO_CHAR(XXX,[type])
    常用的type有

    • W 按照Oracle的标准周来返回周数,表示:为当前月份的第几周
    • WW
    • IW
    • D
    • FMWW

    截取2019年3月的日期
    在这里插入图片描述用法演示---------W
    当选择的日期为2019-03-1日

    SELECT TO_Char (to_date('2019-03-01','YYYY-MM-DD'), 'YY-MM-W') AS WeekNo FROM DUAL;
    

    对应 Query结果为:19-03-1(表示2019年4月28日为2019年4月份的第四周)
    在这里插入图片描述
    当选择的日期为2019-04-04日时,对应的结果仍为
    在这里插入图片描述
    注意:从上面的举例可以看出W的实际含义为只针对一个月的时间来看

    用法演示---------IW
    以2019-03-04日为例(注意,3月4日为星期一)

    SELECT TO_Char (to_date('2019-03-04','YYYY-MM-DD'), 'YY-MM-WW') AS WeekNo FROM DUAL;
    

    显示的周数为09,表示第9周

    再以2019-03-05为例(注意,3月5日未星期二)

    SELECT TO_Char (to_date('2019-03-05','YYYY-MM-DD'), 'YY-MM-WW') AS WeekNo FROM DUAL;
    

    注意,已经变成了第10周
    注意,已经变成了第10周
    原因:WW采用的Oracle默认的标准周的计算方式,该标准周的统计逻辑为:每周二当前一周的开始,下周周一当作当前周的最后一天

    用法演示---------WW
    先以2019-03-03为例

    SELECT TO_Char (to_date('2019-03-03','YYYY-MM-DD'), 'YY-MM-IW') AS WeekNo FROM DUAL;
    

    在这里插入图片描述

    再取2019-03-04

    SELECT TO_Char (to_date('2019-03-04','YYYY-MM-DD'), 'YY-MM-IW') AS WeekNo FROM DUAL;
    

    在这里插入图片描述

    IW即表示ISO标准周,及我们大众通常认知中的周一开始,到周日结束,算作一周

    用法演示---------D
    该用法并不常见,也简单说明下
    返回是当前日期为该周的第几天,周数的计算逻辑为周日开始,记为1,到周六结束,记为7,一直循环

    取03-05日

    SELECT TO_Char (to_date('2019-03-05','YYYY-MM-DD'), 'YY-MM-D') AS WeekNo FROM DUAL;
    

    在这里插入图片描述
    用法演示---------FMWW
    该用法也并不常有,简单说明下,周数的计算逻辑为
    从1月1日开始,每隔7天算一周 ,及1/1~1/7为第一周,1/8-1/14为第二周,依次类推

    例如2019年第一个星期日为01-06日

    SELECT TO_Char (to_date('2019-01-07','YYYY-MM-DD'), 'YY-MM-FMWW') AS WeekNo FROM DUAL;
    

    对应的结果是:在这里插入图片描述

    以上为个人所理解的Oracle中常用的周数计算

    展开全文
  • 摘要:下文讲述MySQL数据库中获取指定日期对应的本年的周数信息的方法分享,如下所示;实现思路:采用week系统函数即可获取指定日期在日期所在年度的周数信息week系统函数语法说明:week(date,first)------参数说明----...
  • -- 查询日期所在月份的所有的_this_date_week的日期 declare _last_year_week_date timestamp[]='{}';-- 查询日期去年所在月的所有的_this_date_week的日期 declare _date_row record; declare _date_array_item ...
  • 查询上季度数据 select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(DATE_SUB(now(),interval 1 QUARTER)); 查询本年数据 select * from `ht_invoice_information` where YEAR(create_...
  • sqlserver获取周数

    2021-02-01 02:15:59
    Sql查询获取周数从星期一开始的周数 可以用 set datefirst 1 设定一周的第一天是星期一 SET DATEFIRST 将一周的第一天设置为从 1 到 7 的一个数字。 SELECT DATENAME(WEEK,getDate()) AS WeekName
  • 自动设置当前的周数,星期几,查询该天的日期,求各位给个思路,用js写的一个插件[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/12.gif][/img]
  • mysql 查询当天数据mysql查询今天、昨天、7天、近30天、本月、上一月 数据今天select * from 表名 where to_days(时间字段名) = to_days(now());昨天SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间...
  • 例如:当前为第10周,查询第7,8,9三周的数据。如果第8周没有数据,显示则为如下: 注 :数据库没有第八周的数据。(包括时间) 周数 列1 9 2 8 0 7 3
  • 下面是我写的一个查询: SELECT DATE_FORMAT(FROM_UNIXTIME(clock), "%U") AS week count(*) as cnt FROM logs WHERE DATE_FORMAT(FROM_UNIXTIME(clock), "%Y") = '2010' GROUP BY week 结果如下: | week | cnt -----...
  • elementUI 没有提供周选择器显示周数的功能,但是我们的项目中又必不可少。经过一番对比发现,其他几个 UI 框架好像大多数都支持 周选择...经过查询,根据该博主分项的文章:elementUI DatePicker 日期选择器 周数显示.
  • java周数与相应时间转换实体类

    千次阅读 2018-07-20 11:19:48
    最近开发遇到查询第几周内数据的问题,从而计算环比、同比,这就需要知道周数对应的日期,上网搜索并总结出一个实体类,方便以后开发。 具体代码 import java.text.SimpleDateFormat; import java.time.Year...
  • 输入某学期第一周周一的日期(年、月、日),在输入要查询的日期,点击计算按钮,显示出查询日期是第几周周几。例如,输入的第一周周一的时间为2010年8月30日,再输入2010-12-2,则计...输入某学期第一周周一的日期(年...
  • 最近在一个项目中遇到一个查询页面,其中一个查询条件是根据选择的年份、月以及周数显示选择的该周从几号到几号,这样一个需求。在网上搜索了一下,有类似的但是没有完全一样的,只好自己动手。思路是首先取得所选择...
  • 大家一看到这个问题是不是都会想起java的日期类Calendar,然后会调用getActualMaximum(Calendar.WEEK_OF_MONTH)来查询该月有多少个周啊?接下来,阿Q就给大家说一下该方法存在的问题以及解决方法。...
  • 有的考生都到了改分短信/电话/邮件,有的考生做梦都梦到自己没考过或考过了。...考生也很想知道,等待的过程着实煎熬,但北北老师想让各位吃颗定心丸...但是如果你害怕错过第一时间查询成绩,可以加北北老师微信号(xiao...
  • 但是如果你害怕错过第一时间查询成绩,可以加北北老师微信号(xiaobei9166)私聊沟通您的困惑,也可以订阅短信或微信查分提醒,点击立即订阅>> 历年注册会计师成绩公布时间: 2013年成绩查询时间:...
  • 但是如果你害怕错过第一时间查询成绩,可以加北北老师微信号(xiaobei9166)私聊沟通您的困惑,也可以订阅短信或微信查分提醒,点击立即订阅>> 历年注册会计师成绩公布时间: 2013年成绩查询时间:20...
  • 但是如果你害怕错过第一时间查询成绩,可以加北北老师微信号(xiaobei9166)私聊沟通您的困惑,也可以订阅短信或微信查分提醒,点击立即订阅>> 历年注册会计师成绩公布时间:2013年成绩查询时间:20...
  • vnstat基本使用命令,vnstat无法统计单个端口的流量,但是可以统计单个网 口的流量。 vnstat -i eno1 -l #实时流量情况 vnstat -i eno1 -h #按小时查询流量情况...vnstat -i eno1 -w #按周数查询流量情况 vnstat -i e...
  • 今天才查询1元版的用户新增的时候,又用到了透视表,本想耐着性子看看pandas的用户手册,结果发现自己太高估了自己,只有带着问题去学东西,才是最快的。将今天撸的代码先贴这儿复习下:import pandas as pdimport ...

空空如也

空空如也

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

周数查询