Ниже приведена моя таблица Loan_Details.Oracle Выбор даты
INST_MONTH START_AMOUNT
--------- ------------
17-JUN-16 10500
11-FEB-16 4500
11-MAR-16 4125
11-APR-16 3750
11-MAY-16 3375
11-JUN-16 3000
11-JUL-16 2625
11-AUG-16 2250
11-SEP-16 1875
11-OCT-16 1500
11-NOV-16 1125
11-DEC-16 750
11-JAN-17 375
Мой запрос
select INST_MONTH
from loan_details
where to_char(INST_MONTH,'MM- YYYY') > to_char(TO_DATE('9/11/2016','MM/DD/yyyy'),'MM-YYYY')
Когда мне нужно выбрать все месяцы больше, чем 11-ОКТ-2016 всегда возвращает
INST_MONTH
---------
17-OCT-15
17-NOV-15
17-DEC-15
11-OCT-16
11-NOV-16
11-DEC-16
Почему я отсутствующего 11-JAN-17
?
(На данный момент рассмотрим месяц и только год)
'to_char (TO_DATE ('9/11/2016', 'MM/DD/yyyy '),' MM-YYYY ') 'это совершенно бесполезно. Это сложный способ написания '' 11 -2016''. Какой тип данных «inst_month»? Если это «дата», то вызов 'to_date()' на нем для преобразования значения даты в значение 'date' не имеет никакого смысла. Просто используйте 'where inst_month> date '2016-09-11''. Btw. '9/11/2016' не' 11-OCT-2016' это сентябрь, 9-е (2016-11-09) –
God Save Me Пожалуйста, дайте мне способ сравнить дату, независимо от даты. Мне нужно сравнить только месяц и год –