如何获得从第一天到当前星期,月份或年的当前日期的星期,月份或年的日期?

时间:2019-03-25 07:36:05

标签: sql oracle

对不起,标题令人困惑。 基本上,我正在使用Oracle Apex 18.x创建一个仪表板,在一张卡片中,我将比较今天与昨天,本周与上周,本月与上个月以及今年与去年之间的销售额。

今天和昨天我没问题。我的问题是星期,月份和年份,因为我只想比较当前日期,而不是整个上周。

例如,如果今天是当前一周的第4天,那么我也必须只比较上周到第4天。

对于该月,如果让我们说今天是2018年3月25日,那么我应该只将其与2月1-25日相比较。与年份相同。

如果要求获得上周的全部,上个月的全部和去年的全部,这将不是问题。

1 个答案:

答案 0 :(得分:0)

对于CRETAE PROCEDURE [dbo].[io_sp_admin_add_emp] @id BIGINT, @lastName varchar(20), @firstName varchar(20) AS BEGIN SET NOCOUNT ON; BEGIN TRY BEGIN TRANSACTION [TranAddEmp] -- Compute the hash once, store in a local variable DECLARE @HashId varbinary(8000) = HashBytes('SHA2_256', cast(@id as varbinary(50))) INSERT INTO empTable( LastName, FirstName, hash_id ) VALUES( @lastName, @firstName, @HashId ) UPDATE empTable SET rowId = incId WHERE hash_id = @HashId COMMIT TRANSACTION [TranAddEmp] END TRY BEGIN CATCH -- make sure transaction has started and is not commited IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION [TranAddEmp] END CATCH END ,我会这样做:

week

对于select TRUNC(sysdate, 'DAY') start_of_the_week, (sysdate) day_of_current_week, (TRUNC(sysdate, 'DAY') - 7 ) start_of_last_week (sysdate - 7) day_of_last_week, from dual; ,它将是:

month