如何使用Oracle SQL获得季度周?我使用简单的函数获取月份中的星期和一年中的星期:
WITH SYSDATE_TABLE AS (
SELECT to_date('01-06-2015', 'dd-mm-yyyy') as date_dt
FROM DUAL
)
SELECT
to_char(DATE_DT,'W') as WEEK_OF_MONTH,
to_char(to_date(DATE_DT),'WW') as WEEK_OF_YEAR
FROM
SYSDATE_TABLE;
我使用MOD
函数获得季度月份:
(CASE mod(to_number(to_char(DATE_DT, 'MM')), 3)
WHEN 0 THEN 3
WHEN 1 THEN 1
WHEN 2 THEN 2
END) AS MONTH_OF_QUARTER
但我不知道我怎样才能得到季度的一周。有没有人知道如何解决这个问题?
怎么样
select 1 + TO_CHAR(DATE_DT, 'WW') - TO_CHAR(TRUNC(DATE_DT, 'Q'), 'WW')
from SYSDATE_TABLE;
根据你的解释:每个季度的前七天是第一周。接下来的七天是第二周等。你可以试试这个:
select 1 + TRUNC( (DATE_DT - TRUNC(DATE_DT, 'Q')) / 7 )
from SYSDATE_TABLE;