请协助我纠正它。我想显示我尝试的当前月份数据,但其显示错误的文字太长了:
number date
10 20-Jan-2018
20 30-Oct-2018
30 24-Sep-2018
24 01-Oct-2018
select number
from table
where date <= to_char(sysdate,'mm');
答案 0 :(得分:0)
您的date
列似乎包含文本。理想情况下,您应该始终将日期信息存储在正确的日期列中。解决方法是,我们可以改用其他方法,并在您的日期列上使用TO_DATE
,以将其与当前月份的第一天进行比较:
SELECT number
FROM yourTable
WHERE TO_DATE(date, 'dd-mon-yyyy') < TRUNC(sysdate, 'mm');