Hay una función API para buscar texto: la función DesGetSearchResultTable.
La función DesGetSearchResultTable recibe un argumento de búsqueda para buscar en los documentos de una columna de texto en particular y almacena el resultado en una tabla. La tabla del resultado contiene el descriptor de contexto de cada documento encontrado. También puede contener información del rango y el número de coincidencias, dependiendo de la opción de búsqueda especificada.
También puede obtener esta información utilizando las funciones RANK y NO_OF_MATCHES. Este es un ejemplo:
INSERT INTO RESULT SELECT COMMENTHANDLE, RANK(COMMENTHANDLE, '"stored procedures"'), NO_OF_MATCHES(COMMENTHANDLE, '"stored procedures"') FROM DB2TX.SAMPLE WHERE CONTAINS(COMMENTHANDLE, '"stored procedures"') = 1
DesGetSearchResultTable sólo se puede utilizar en tablas base, pero puede ser más rápida que utilizar las funciones de DB2 Text Extender si la consulta es de sólo texto; va directamente al servidor DB2 Text Extender para obtener el rango y el número de coincidencias y sólo repite en bucle el número de documentos coincidentes encontrados. Por otro lado, en el ejemplo UDF, la función CONTAINS se llama una vez para cada fila de la tabla; después, para cada fila calificada, se llama a las funciones RANK y NO_OF_MATCHES. Para cada documento encontrado, se realizan tres búsquedas separadas.
Los parámetros de entrada son:
Si se especifica una opción de examen, esta función devuelve un puntero a una información de examen.