.. highlightlang:: none .. groonga-command .. table_remove PatPre 主キーによる前方一致検索 ======================== groongaのテーブルは、テーブル作成時にパトリシア木オプションを指定すると、前方一致検索を行うことができます。また、追加のオプションを指定することにより、主キーの後方一致検索をも行うことができます。 主キーによる前方一致検索 ------------------------ table_createコマンドのflagsオプションにTABLE_PAT_KEYを指定することで、主キーによる前方一致検索ができるようになります。 .. groonga-command .. include:: ../example/tutorial08-1.log .. table_create --name PatPre --flags TABLE_PAT_KEY --key_type ShortText load --table PatPre [ {"_key":"ひろゆき"}, {"_key":"まろゆき"}, {"_key":"ひろあき"} ] select --table PatPre --query _key:@ひろ .. #主キーによる後方一致検索 .. #------------------------ .. # .. #table_createコマンドのflagsオプションにTABLE_PAT_KEYとKEY_WITH_SISを指定することで、主キーによる前方一致検索・後方一致検索の両方が可能となります。 .. # .. #KEY_WITH_SISフラグを付与すると、データを追加する際に後方一致用のレコードまで追加されてしまいます。カラムに .. # .. #そのレコードとの区別をつけるためにflagカラムを追加しています。 .. # .. #実行例 :: .. # .. # > table_create --name PatSuf --flags TABLE_PAT_KEY|KEY_WITH_SIS --key_type ShortText .. # [[0,1270635931.03862,0.00379]] .. # > column_create --table PatSuf --name original --type UInt8 .. # [[0,1270635969.35514,0.013933]] .. # > load --table PatSuf .. # > [ .. # > {"_key":"ひろゆき","original":1}, .. # > {"_key":"まろゆき","original":1}, .. # > {"_key":"ひろあき","original":1} .. # > ] .. # [[0,1270635973.61015,0.062957],3] .. # > select --table PatSuf --query _key:@ゆき .. # [[0,1270635977.04008,0.000461],[[[4],[["_id","UInt32"],["_key","ShortText"],["original","UInt8"]],[1,"ひろゆき",1],[5,"まろゆき",1],[3,"ゆき",0],[2,"ろゆき",0]]]] .. # > select --table PatSuf --query "_key:@ゆき + original:1" .. # [[0,1270636044.85414,0.000443],[[[2],[["_id","UInt32"],["_key","ShortText"],["original","UInt8"]],[1,"ひろゆき",1],[5,"まろゆき",1]]]]