概念検索条件式に一致する文書を検索します。また,同時にスコア値の計算をします。
concept_with_score(列指定,概念検索条件式)
列指定
概念検索条件式(BLOB)(最大5メガバイト)
常にTRUE
EXEC SQL BEGIN DECLARE SECTION;
struct {long len; char data[4096];} sql;
SQL TYPE IS BLOB(1M) excond;
char title[8];
int score;
EXEC SQL END DECLARE SECTION;
strcpy(sql.data, "SELECT score_concept(doc), title FROM reports
WHERE concept_with_score(doc, ? AS BLOB(1M)) IS TRUE ORDER BY 1 DESC");
sql.len = strlen(sql.data);
strcpy(excond.excond_data,
"文章[概要{¥"概念検索とは,検索条件として入力された文章と
内容(概念)¥が似通った文書を検索する機能である。¥"}]");
excond.excond_length = strlen(excond.excond_data);
EXEC SQL PREPARE sqlext FROM :sql;
EXEC SQL DECLARE excrs CURSOR FOR sqlext;
EXEC SQL OPEN excrs USING :excond;
while(1) {
EXEC SQL FETCH excrs INTO :score, :title;
}
score_concept
全文検索条件式には,複数の条件を"AND","OR"で指定できます。