IBM Books
(C) IBM Corp. 2000

DB2 Extension Net Search - Guide d'administration et d'utilisation

Utilisation de la fonction de mise en évidence (HIGHLIGHT)

Deux fonctions de valeur table SQL sont disponibles, toutes deux appelées db2ext.textsearch. Pour utiliser la fonction db2ext.highlight, vous devez utiliser la fonction db2ext.textsearch avec les paramètres supplémentaires numberOfHits et hitInformation.

Dans cet exemple, appelez la fonction db2ext.highlight pour afficher le document complet sans mettre en évidence les occurrences trouvées par la fonction db2ext.textsearch.

select  p.docid, 
     db2ext.highlight(p.comment, t.hitinformation, ' WINDOW_NUMBER = 0 ')
          as highlight 
from DB2EXT.TEXTTAB p, 
     table (db2ext.textsearch('"bestseller" | "peacekeeping" | "soldiers"
          | "attention"', 'DB2EXT', 'COMMENT', 0, 20, 
          cast(NULL as INTEGER), 10)) t 
where p.docid = t.primkey and p.docid = 2
 

L'argument de recherche renvoie le résultat suivant :

DOCID HIGHLIGHT
 
2     A New York Times bestseller about peacekeeping soldiers called 
      "Keepers" who devise a shocking scheme to get the worlds 
      attention after their tour of duty ends.
 
1 record(s) selected.
Remarque

Dans tous les exemples db2ext.highlight, la fonction de table db2ext.textsearch recherche l'un des termes suivants : "bestseller", "peacekeeping", "soldiers", ou "attention".

Dans cet exemple, appelez la fonction db2ext.highlight pour afficher le document complet et mettre en évidence toutes les occurrences trouvées par la fonction db2ext.textsearch.

select  p.docid,
     db2ext.highlight(p.comment, t.hitinformation, ' WINDOW_NUMBER = 0,
          TAGS = ("<bf>", "</bf>" )  ') as highlight
from DB2EXT.TEXTTAB p,
     table (db2ext.textsearch('"bestseller" | "peacekeeping" | "soldiers"
          | "attention"', 'DB2EXT', 'COMMENT', 0, 20, 
          cast(NULL as INTEGER), 10)) t 
where p.docid = t.primkey and p.docid = 2
 

L'argument de recherche renvoie le résultat suivant :

DOCID HIGHLIGHT
 
2     A New York Times <bf>bestseller</bf> about <bf>peacekeeping</bf>
     <bf>soldiers</bf> called "Keepers" who devise a shocking scheme to 
      get the worlds <bf>attention</bf> after their tour of duty ends.
 
1 record(s) selected.

Dans cet exemple, appelez la fonction db2ext.highlight pour afficher au maximum 10 parties (fenêtres) du document. La taille de toutes les fenêtres est de 24, ce qui correspond approximativement à 12 octets de données de chaque côté de l'occurrence. De plus, les occurrences trouvées par la fonction de table db2.textsearch sont mises en évidence.

select  p.docid, 
     db2ext.highlight(p.comment, t.hitinformation, ' WINDOW_NUMBER = 10,
          WINDOW_SIZE = 24, TAGS = ("<bf>", "</bf>" ) ') as highlight 
from DB2EXT.TEXTTAB p, 
     table (db2ext.textsearch('"bestseller" | "peacekeeping" | "soldiers"
          | "attention"', 'DB2EXT', 'COMMENT', 0, 20, 
          cast(NULL as INTEGER), 10)) t 
where p.docid = t.primkey and p.docid = 2

L'argument de recherche renvoie le résultat suivant :

DOCID HIGHLIGHT
 
2     York Times <bf>bestseller</bf> about <bf>peacekeeping</bf> ...
      <bf>peacekeeping</bf> <bf>soldiers</bf> called "Keepers" ... the
      worlds <bf>attention</bf> after their 
 
1 record(s) selected.

La première occurrence trouvée est <bf>bestseller</bf> et cette occurrence détermine la première fenêtre. La seconde occurrence, <bf>peacekeeping</bf> ne se trouve qu'à 8 octets de la première occurrence et totalement incluse dans la première fenêtre. La troisième occurrence, <bf>soldiers</bf> est en dehors de la première fenêtre et détermine une nouvelle fenêtre. Comme la seconde occurrence, <bf>peacekeeping</bf> n'est qu'à 2 octets sur la gauche de l'occurrence <bf>soldiers</bf>, elle est également incluse dans la seconde fenêtre et mise en évidence. La quatrième occurrence <bf>attention</bf> se trouve en dehors de la seconde fenêtre et en détermine donc une nouvelle. Comme aucune occurrence précédente, ni supplémentaire n'est contenue dans la taille de cette fenêtre, seules les données entourant l'occurrence sont contenues dans la fenêtre.

De plus, comme aucun paramètre WINDOW_SEPARATOR n'est spécifié, le séparateur de fenêtre par défaut, " ... " est adopté pour séparer les trois fenêtres du document.

Remarque

Pour garantir des performances élevées lors de l'utilisation de la fonction db2ext.highlight, l'utilisateur doit limiter les résultats de la recherche dans la fonction de valeur table db2ext.textsearch.

Pour plus de détails sur les paramètres, reportez-vous à la section DB2EXT.HIGHLIGHT.


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]