Oracle查询上一年度特定季度的数据

时间:2014-02-20 14:21:17

标签: sql excel oracle

我有一个excel电子表格,可以在oracle数据库中查询某些数据。我起诉excel做一些计算,然后发布它的分享点。

我需要收集去年第四季度(2013年)的数据,我的数据选择看起来像这样

Where "TABLE". "DATEFIELD" >= ADD_MONTHS (TRUNC (SYSDATE, 'MONTH'), - 1)
 and  "TABLE". "DATEFIELD" <  TRUNC (SYSDATE, 'MONTH')

我将如何看待2013年10月,11月和12月?

1 个答案:

答案 0 :(得分:2)

where to_char("TABLE"."DATEFIELD", 'qyyyy') = '42013'

有关qyyyy的具体含义,请参阅this oracle documentation link

简而言之,to_char(<date expression>, <format model>)返回一个字符串,其含义由格式模型指定,其值取决于日期表达式。 在这里,q告诉我们返回一个标识日期表达式 quarter 的单个字符(4 = 10月到12月)。然后yyyy指定将年份作为四个字符返回。

根据此格式模型,属于2013年最后一个季度的所有日期均等于42013