我有一个excel电子表格,可以在oracle数据库中查询某些数据。我起诉excel做一些计算,然后发布它的分享点。
我需要收集去年第四季度(2013年)的数据,我的数据选择看起来像这样
Where "TABLE". "DATEFIELD" >= ADD_MONTHS (TRUNC (SYSDATE, 'MONTH'), - 1)
and "TABLE". "DATEFIELD" < TRUNC (SYSDATE, 'MONTH')
我将如何看待2013年10月,11月和12月?
答案 0 :(得分:2)
where to_char("TABLE"."DATEFIELD", 'qyyyy') = '42013'
有关q
和yyyy
的具体含义,请参阅this oracle documentation link。
简而言之,to_char(<date expression>, <format model>)
返回一个字符串,其含义由格式模型指定,其值取决于日期表达式。
在这里,q
告诉我们返回一个标识日期表达式的 quarter 的单个字符(4 = 10月到12月)。然后yyyy
指定将年份作为四个字符返回。
根据此格式模型,属于2013年最后一个季度的所有日期均等于42013
。