标签: week-number

Postgres按周划分

我可以想象按日期对表进行分区(特别是对日志进行分区)是一种广泛使用的方法,但是我找不到解决我问题的好方法。

我想按周创建一个表分区(记录数量大到每月都可以)。之所以要每周一次,是因为我需要算法的数据,该算法将在过程中查找日期。

我的问题是我希望它考虑周并使用“典型”方法来创建分区,所以我必须手动创建它。这样的事情。

    CREATE TABLE measurement_y2013w01 (
CHECK ( logdate >= DATE '2013-01-07' AND logdate < DATE '2013-01-14' ) 
    ) INHERITS (measurement);

    CREATE TABLE measurement_y2006w02 (
CHECK ( logdate >= DATE '2013-01-14' AND logdate < DATE '2013-01-21' ) 
    ) INHERITS (measurement);

... 
Run Code Online (Sandbox Code Playgroud)

但是我希望它能自动完成。我不想为每个星期一个一个地创建分区。

我给命名的规则是yYYYYwWW来命名分区或开始datadYYYYMMDD。

我想在插入时使用类似以下的方法检查分区:

 SELECT
    nmsp_parent.nspname AS parent_schema,
    parent.relname      AS parent,
    nmsp_child.nspname  AS child,
    child.relname       AS child_schema
FROM pg_inherits
    JOIN pg_class parent        ON pg_inherits.inhparent = parent.oid
    JOIN pg_class child         ON pg_inherits.inhrelid   = child.oid
    JOIN pg_namespace nmsp_parent   ON nmsp_parent.oid  = …
Run Code Online (Sandbox Code Playgroud)

sql postgresql partitioning week-number

6
推荐指数
2
解决办法
3661
查看次数

周日如何开始周?

我需要在php中获取周数,其中周数应该从星期日算起.默认情况下它是星期一.请帮我找一个如何在星期日作为开始日获取周数的方法.

在php手册ISO-8601周的一年中,周从星期一开始(在PHP 4.1.0中添加)

但我需要获得一周的周数,周日从周日开始.

谢谢

php datetime week-number

6
推荐指数
1
解决办法
1万
查看次数

从VBA上的给定日期获取该月的周数

我有一组日期,我必须获得本月的一周,有很多文献说明如何使用VBA代码获取一年中的一周,而不是如何获得当月的周数.例如03年3月13日将进行第3周的第1周,而不是第10周的结果.
所有帮助apreciated

excel vba date week-number

6
推荐指数
2
解决办法
1万
查看次数

在Linq to SQL中按周(按周数)分组

在常规SQL中我可以做类似的事情

SELECT * From T GROUP BY DATEPART(wk, T.Date)
Run Code Online (Sandbox Code Playgroud)

我怎么能在Linq to SQL中做到这一点?

以下不起作用

From F In DB.T Group R By DatePart(DateInterval.WeekOfYear, F.Date)
Run Code Online (Sandbox Code Playgroud)

也不工作:

From F In DB.T Group R By (F.Date.DayOfYear / 7)
Run Code Online (Sandbox Code Playgroud)

c# vb.net sql-server week-number linq-to-sql

5
推荐指数
2
解决办法
7971
查看次数

用Joda-Time代表一年中的一周

Joda-Time图书馆代表一年中最好的方式是什么?我正在寻找一些像YearMonth年份一样优雅的东西.

java jodatime week-number

5
推荐指数
1
解决办法
4700
查看次数

Ruby On Rails,周数不正确(-1)

我需要当前的周数,如果我没有完全弄错,现在是第51周?但是,当在控制台中测试时,我得到了这个.

Time.now
=> 2013-12-19 11:08:25 +0100
Time.now.strftime('%U')
=> "50"

Date.today
=> Thu, 19 Dec 2013
Date.today.strftime("%U").to_i
=> 50
Run Code Online (Sandbox Code Playgroud)

这是为什么?

ruby ruby-on-rails week-number ruby-on-rails-4

5
推荐指数
3
解决办法
1349
查看次数

使用DatePart()的ISO8601周数不正确

我班上有以下Sub.我没有错误,但结果与ISO-8601标准不符

Private Sub calculateAllProperties(ByVal dt As Date)

    Select Case dt.DayOfWeek

        Case DayOfWeek.Monday

            m_CurrentWeekStartDate = dt

        Case DayOfWeek.Tuesday

            m_CurrentWeekStartDate = DateAdd(DateInterval.Day, -1, dt)

        Case DayOfWeek.Wednesday

            m_CurrentWeekStartDate = DateAdd(DateInterval.Day, -2, dt)

        Case DayOfWeek.Thursday

            m_CurrentWeekStartDate = DateAdd(DateInterval.Day, -3, dt)

        Case DayOfWeek.Friday

            m_CurrentWeekStartDate = DateAdd(DateInterval.Day, -4, dt)

        Case DayOfWeek.Saturday

            m_CurrentWeekStartDate = DateAdd(DateInterval.Day, -5, dt)

        Case DayOfWeek.Sunday

            m_CurrentWeekStartDate = DateAdd(DateInterval.Day, -6, dt)

    End Select

    'Now we have our start point of m_CurrentWeekStartDate we can calculate all other properties.

    m_CurrentWeekStartYear = DatePart(DateInterval.Year, m_CurrentWeekStartDate)

    m_CurrentWeekNo = DatePart(DateInterval.WeekOfYear, …
Run Code Online (Sandbox Code Playgroud)

.net vb.net iso date week-number

5
推荐指数
1
解决办法
1440
查看次数

如何在Entity Framework Core中按周分组?

在Entity Framework 6中,我可以使用SqlFunctions.DatePart()方法:

var byWeek = data.GroupBy(x => SqlFunctions.DatePart("week", x.Date));
Run Code Online (Sandbox Code Playgroud)

但是这些类(DbFunctions并且SqlFunctions在Entity Framework Core中不可用)(参考)。

所以我的问题是如何在实体框架核心中按周分组?

linq group-by week-number entity-framework-core .net-core

5
推荐指数
1
解决办法
1878
查看次数

从日期时间获取星期数

我试图从日期时间获取星期数,在我的情况下,一周的第一天是星期一,我想遵循FirstFourDays约定。

要检查结果,请检查以下网页:

https://espanol.epochconverter.com/semanas/2020

要获取星期数,我使用以下方法:

System.Globalization.CultureInfo.InvariantCulture.Calendar.GetWeekOfYear();
Run Code Online (Sandbox Code Playgroud)

所以我想获取日期2019-12-29的星期数,所以我使用以下代码:

System.Globalization.CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(new DateTime(2019, 12, 29), System.Globalization.CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
Run Code Online (Sandbox Code Playgroud)

结果是第52周。这是正确的。

现在我正在尝试获取2019-12-30的星期数,我得到的星期数是53,这是错误的,因为2019只有52周。实际上,2019-12-30与2020-01-01属于同一周,这是正确的第一周,所以我不明白为什么我可以在同一日期获得两个不同的结果。

我怎么总是能得到正确的结果?还是获取任何日期的星期数的正确方法是什么?

c# week-number

5
推荐指数
1
解决办法
209
查看次数

gnuplot:如何获得正确的周数?

从这个问题起源的gnuplot为什么警告:不好的时候格式字符串,有在gnuplot的一周号码使用时间说明符的发现%W%U是错在某些情况下。

显然,周数有不同的定义。此外,一周开始时有不同的定义,例如星期日或星期一。常用的周数定义之一(但不在美国和其他一些国家/地区使用)是根据 ISO 8601 定义的。

代码:(说明错误的周数)

### wrong week numbering in gnuplot with %W and %U
reset session

StartDate = "24.12.2020"
myTimeFmt = "%d.%m.%Y"
SecondsPerDay = 3600*24

print "      date   %a  %w  %d   %j  %W  %U"
print "===================================="
do for [i=0:20] {
    t = strptime(myTimeFmt,StartDate) + i*SecondsPerDay
    myDate = strftime(myTimeFmt."  %a  %w  %d  %j  %W  %U", t)
    print sprintf("%s", myDate)
}
### end of code
Run Code Online (Sandbox Code Playgroud)

gnuplot 时间说明符:

%a abbreviated name of day of …
Run Code Online (Sandbox Code Playgroud)

gnuplot week-number

5
推荐指数
1
解决办法
132
查看次数