> = sysdate-30工作日的数据选​​择在oracle中

时间:2014-11-19 09:13:36

标签: oracle

我需要从表格测试中选择sysdate- 30个工作日的数据。

当我在做的时候 从测试中选择* 其中cre_d> = sysdate-30;

它将包括星期六,星期日和美国假期(如果有的话)。我想选择sysdate- 30个工作日(idealy sysdate-38,因为4个周末在一周内出现,但它看起来不正确,因为美国假期可能来了,这个系统日期-38应该随sysdate-39改变。)

请建议最好的方法。谢谢!

1 个答案:

答案 0 :(得分:0)

CREATE TABLE t_tb AS SELECT sysdate-level AS dt FROM dual CONNECT BY level < 50;

SELECT TO_CHAR(dt,'d'), dt FROM t_tb WHERE TO_CHAR(dt,'d') BETWEEN 2 AND 6and rownum <= 30

你想要的吗?