Поиск Oracle в хранимой процедуре

#oracle

#Oracle

Вопрос:

Я хочу создать хранимую процедуру, которая выполняет поиск Oracle. Поиск Oracle, который я хочу выполнить, является:

 SELECT ID, score(1)  from TABLE
WHERE  CONTAINS(column, 'fuzzy(%Item_to_be_searched%)', 1) > 0
order by score(1) DESC;
  

Хранимая процедура имеет параметр Item_to_be_searched и должна возвращать ID amp; Score .

Когда я пытаюсь создать процедуру, возникает ошибка:

PLS-00222: в этой области не существует функции с именем ‘SCORE’ PL/ SQL: ORA-00904: : недопустимый идентификатор

Кто-нибудь знает, можно ли использовать score в хранимой процедуре?

Комментарии:

1. Он рассматривает оценку (1) как функцию. почему вы используете score (1) вместо score?

2. Я использовал эту метку, но если используется только 1 предложение contains, оно избыточно. Я пробовал без (1), и теперь это работает. Спасибо!

3. Функция SCORE может использоваться в любом из этих предложений: SELECT, ORDER BY или GROUP BY. Значение, указанное для LABEL, является тем же значением, которое определено аргументом LABEL в функции CONTAINS, которая сгенерировала оценки, и на которое ссылается функция SCORE во всех других предложениях. Если в инструкции SELECT используется только одна функция CONTAINS, параметр LABEL в предложении CONTAINS не требуется, но будет сгенерировано значение метки SCORE, равное нулю (0). Затем все остальные предложения должны ссылаться на ОЦЕНКУ (0) или ОЦЕНКУ (*).