yP f[^JCfbNXz

GF83  ٌ̧ð
	\[XeLXg	SRC_TEXT

@f[^XgAEvt@X쐬܂B
	e񂪒P̃hLgƂčt܂B
EXEC CTX_DDL.DROP_PREFERENCE('GF83_TXT');

BEGIN
	CTX_DDL.CREATE_PREFERENCE('GF83_TXT', 'DIRECT_DATASTORE');
END;


A.CfbNX̍쐬B
  CTXSYS.CONTEXT ŁAقǂ́ADATASTORE w肵܂B

DROP INDEX GF83_TXT_IDX ;

--CREATE INDEX GF83_TXT_IDX ON GF83(SRC_TEXT)
--	INDEXTYPE IS CTXSYS.CONTEXT
--	PARAMETERS ('DATASTORE GF83_TXT');

C.{pڸǉ܂B
BEGIN
	CTX_DDL.CREATE_PREFERENCE('JPN_LX','JAPANESE_LEXER');
END;

CREATE INDEX GF83_TXT_IDX ON GF83(SRC_TEXT)
	INDEXTYPE IS CTXSYS.CONTEXT
	PARAMETERS ('DATASTORE GF83_TXT LEXER JPN_LX');

DSp̃g[NQƂłBGF83_TXT_IDX ͂CfbNXw肵܂B
select count(*) from DR$GF83_TXT_IDX$I ;

=====================================================
eLXg̓
EXEC CTX_DDL.SYNC_INDEX( 'GF83_TXT_IDX' );

eLXg̃eiX
EXEC CTX_DDL.OPTIMIZE_INDEX( 'GF83_TXT_IDX','FAST' );

폜ĊɌΏە\ɑ݂ĂȂg[N폜
EXEC CTX_DDL.OPTIMIZE_INDEX( 'GF83_TXT_IDX','FULL' );


=====================================================
FSNIPPET
  hLg̗p쐬ɂ́ACTX_DOC.SNIPPETvV[Wgp܂B
  pƂ́A⍇Ƃ̑ÕeLXg܂ރeLXg̒fЁitOgjłB
  ̗ṕA}[NAbvꂽ⍇L[[hÕeLXgƈꏏɖ߂߁A
  tL[[hiKWICjƂĂmĂA[U[͖⍇L[[h𕶖ŕ]ł܂B

ʏ́A⍇̌ŏhLg肵Ăgp

SELECT UNIQ FROM GF83 WHERE CONTAINS (SRC_TEXT, 'gp') > 0;
ʁAUNIQ = 190726  SNIPPET ߂B
select CTX_DOC.SNIPPET('GF83_TXT_IDX','190726','gp') from dual

ۂɂ́AvC}L[ JOIN 邱ƂŁAʂ p
oƂł܂Aʂ̕@lׂH

select CTX_DOC.SNIPPET('GF83_TXT_IDX',UNIQ,'gp')
	from GF83
	WHERE CONTAINS (SRC_TEXT, 'gp') > 0;


XRA߂ɂ́ASCOREZqw肵܂B
tɕ\΁AXRA̍ɕ\ł܂B

select SCORE(1),CTX_DOC.SNIPPET('GF83_TXT_IDX',UNIQ,'gp')
	from GF83
	WHERE CONTAINS (SRC_TEXT, 'gp',1) > 0
	ORDER BY SCORE(1) DESC ;


\iɂ́A⍇ŁAROWNUM g܂B
i荞łASNIPPET \܂B

select SCR,CTX_DOC.SNIPPET('GF83_TXT_IDX',UNIQ,'gp') as TXT
from (
	select SCORE(1) as SCR,UNIQ
		from GF83
		WHERE CONTAINS (SRC_TEXT, 'gp',1) > 0
		ORDER BY SCORE(1) DESC
)
where rownum < 11


