Oracle-Textsuche für mehrere Tabellen und Joins
Ich habe die folgende SQL-Anweisung.
select emp_no,dob,dept_no from v_depts
where catsearch (emp_no,'abc',NULL) > 0
or
catsearch (dept_no,'abc',NULL) > 0
woherv_depts
ist eine Ansicht.
Jetzt möchte ich eine oder mehrere Tabellen als Join hinzufügen, damit ich nach Spalten suchen kann, z.employee_details
Enthält Mitarbeiterinformationen und ich kann mitmachenemp_no
Ich habe einen Index für erstelltemployee_details
Tisch füremp_name
Ich kann mich jedoch nicht mit v_depts verbinden, um zu suchen, da ich meine SQL-Anweisung als ändere
select a.emp_no,a.dob,a.dept_no from v_depts a left outer join employee_details b
on (a.emp_no = b.emp_no)
where catsearch (a.emp_no,'abc',NULL) > 0
or
catsearch (a.dept_no,'abc',NULL) > 0
or
catsearch (b.emp_name,'abc',NULL) > 0
es gibt mir fehler
ORA-20000: Oracle Text error:
DRG-10849: catsearch does not support functional invocation
DRG-10599: column is not indexed
obwohl ich einen Index für die Spalte emp_name in erstellt habeemployee_details
Tabelle. Wie kann ich dieses Problem lösen?
Indexanweisung für emp_name
CREATE INDEX IDX_EMP_DETAILS ON EMPLOYEE_DETAILS(EMP_NAME)INDEXTYPE IS CTXSYS.CTXCAT