Как использовать обратный поиск, используя Oracle sql - PullRequest
0 голосов
/ 17 марта 2020

Я бы хотел выполнить поиск по нескольким параметрам. Во входной строке я могу иметь поля: тип и номер.

Номер поля - это число типа (3,2.15, 11.64). Поле типа представляет собой строку типа «com», «org», «cu», «mi»

Possible variations of input string:

3 мили

2 com

3,13- -org

Я хотел бы найти строки, соответствующие этой строке. Итак, я должен сделать немного

select number, type from orders
where (%number%) like '49-М' or (%type%) like '49-М'

Но это не работает. Как я могу точно сравнить поля?

А также я не могу разбить строку на 2 числа, потому что я не знаю разделитель

1 Ответ

0 голосов
/ 17 марта 2020

Ваш вопрос немного расплывчат, но regexp_substr() должен помочь:

where (%number%) like regexp_substr('49-M', '^[0-9.]+', 1) and
      (%type%) like regexp_substr('49-M', '[a-zA-Z]+$', 1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...