我在使用Oracle SQL练习时遇到了麻烦

时间:2012-11-21 15:40:28

标签: sql oracle between to-date

我有关于Oracle SQL的以下说明:

SELECT TO_DATE(FE_DAY || '/' || FE_MO || '/' || FE_YEAR, 'dd/mm/yyyy')
 FROM TI_DATE
WHERE FE_DAY =15 BETWEEN TO_DATE('01/01/2011') AND TO_DATE('31/12/2012')

有效地我获得了15

之间包含intervals天的所有日期

但我需要做其他事情。

如何显示包含

的所有日期
  • FE_Day = 15
  • FE_MO = 02
  • FE_MO = 05
  • FE_MO = 07
  • BETWEEN FE_YEAR = 2011和FE_YEAR = 2012

    来自TI_DATE table

谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

我认为你应该不考虑这些日期。只需在WHERE子句中实现您的规则:

where (FE_Day = '15' or FE_MO in ('02', '05', '07')) and
      FE_YEAR in ('2011', '2012')

我将所有内容都用单引号括起来,因为我猜测数据类型是字符。