V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
z742364692
V2EX  ›  PostgreSQL

求助: postsql 日期获取问题

  •  
  •   z742364692 · 2016-08-02 16:28:49 +08:00 · 2802 次点击
    这是一个创建于 2824 天前的主题,其中的信息可能已经有所发展或是发生改变。

    问题描述:

    • 被安排做数据统计
    • 如何获取春节前(中,后)七天有几天在 1 月,有几天在二月
    • 导了一个春节日期表,表里面就一个字段( date )保存的是春节的日期,比如 1980-02-16
    • 小弟新手,问题棘手,想要得到这样的结果

    date

    9 条回复    2016-08-02 20:17:49 +08:00
    z742364692
        1
    z742364692  
    OP
       2016-08-02 16:47:45 +08:00
    不好意思各位,需要顶一下
    xiandao7997
        2
    xiandao7997  
       2016-08-02 16:50:29 +08:00
    感觉程序处理更方便,直接提取月份和天,然后和 7 比较一下大小就能得出结果
    z742364692
        3
    z742364692  
    OP
       2016-08-02 16:58:37 +08:00 via Android
    @xiandao7997 要 sql 的,我都搞了快两天了,还没弄出来啊,不然不会来此麻烦大家的
    z742364692
        4
    z742364692  
    OP
       2016-08-02 18:01:39 +08:00 via Android
    我顶一个
    xxxyyy
        5
    xxxyyy  
       2016-08-02 18:08:08 +08:00
    春节中七天。。。这个怎么算的?
    liprais
        6
    liprais  
       2016-08-02 18:23:44 +08:00
    如果用 mysql 的话,可以这样
    找到春节这一天 ,就用 spring_festival_date 表示好了
    找出这一天的月份 :case when month(date_sub(spring_festival_date,interval 1 days) ) == 2 then 1 else 0 end
    找出所有七天的月份,分组 count 一下就是你要的结果

    postgres 函数可能不太一样,查查文档就行了
    z742364692
        7
    z742364692  
    OP
       2016-08-02 18:40:09 +08:00 via Android
    @xxxyyy 日期就是春节,比如说 2 月 6 号,就有一天在 1 月, 6 天在二月
    @liprais 好的,还要考虑闰年,我去试试
    xxxyyy
        8
    xxxyyy  
       2016-08-02 20:07:28 +08:00
    @z742364692 这个不跟节前差不多吗?还是不太明白,不过我根据 postgresql 的文档(我也是新手,只能通过查文档写了,未优化过,见笑了:))写了一个计算节前跟节后的,你可以看下:

    https://gist.github.com/anonymous/3a6cccd0da0fa19207b8e3efcb95daa2


    http://imgur.com/a/SQGxC
    z742364692
        9
    z742364692  
    OP
       2016-08-02 20:17:49 +08:00 via Android
    @xxxyyy thx
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   882 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 21:02 · PVG 05:02 · LAX 14:02 · JFK 17:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.