Поисковый запрос с подстановочными знаками в дате - PullRequest
4 голосов
/ 23 ноября 2011

Я пытаюсь найти в БД записи, основанные на дате.Но поиск основан на месяце и году.т. е. mm/yyyy и dd должен быть подстановочным знаком.

Мой поисковый запрос выглядит следующим образом:

Select ucid, uc_name, From (UC_Table1)
where UC_Date like To_Date('11/*/2011','mm/dd/yyyy')

это дает мне следующую ошибку: ORA-01858: не числовойсимвол был найден там, где ожидалось число, так что, очевидно, ему не нравятся * или % или _ или ? в качестве подстановочных знаков для дд.

1 Ответ

4 голосов
/ 23 ноября 2011

Подстановочные знаки не работают таким образом в функции. Функция To_Date() анализирует * до того, как LIKE сможет его увидеть. Рассмотрим:

SELECT ucid, uc_name
FROM UC_Table1
WHERE UC_Date >= To_Date('11/01/2011', 'mm/dd/yyyy')
   AND UC_Date < To_Date('12/01/2011', 'mm/dd/yyyy')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...