如果实际日期是星期五,也会在星期六和星期日Oracle DB显示行

时间:2014-02-17 16:56:54

标签: sql oracle date weekend

通常我只显示一条记录,如果实际日期比数据库中的日期晚一年。我如何检查当天是星期五,然后还显示星期六或星期日的记录?

例如:一年前的13日星期五。我还将显示14日(周六)和15日(周日)的记录

where myDate.arrival < TRUNC (SYSDATE) -365)

这是我的实际陈述。

2 个答案:

答案 0 :(得分:2)

你需要一个条件以防万一。请查看以下示例以供参考:

WHERE txnday in 
  CASE to_char(sysdate, 'Day')
      WHEN 'Friday' THEN // Include condition for Sat and Sun as well
      ELSE // Include condition for only that day
  END

答案 1 :(得分:1)

Where Mydate.Arrival < Trunc (Sysdate) - 365
Or (to_char(Mydate.Arrival, 'D') = 6 AND Mydate.Arrival < Trunc (Sysdate) -363)

这样,您可以检查当天是星期五(星期六),然后选择其到达值小于sysdate - 363(另外2天 - 星期六和星期日 - 包括在内)的记录。