rroonga 0.9.5-x86-mingw32 → 1.0.1-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/NEWS.ja.rdoc +24 -0
- data/NEWS.rdoc +24 -0
- data/README.ja.rdoc +3 -2
- data/README.rdoc +3 -2
- data/Rakefile +15 -6
- data/ext/groonga/extconf.rb +25 -25
- data/ext/groonga/groonga.def +2 -0
- data/ext/groonga/rb-grn-array.c +1 -1
- data/ext/groonga/rb-grn-exception.c +14 -0
- data/ext/groonga/rb-grn-hash.c +1 -1
- data/ext/groonga/rb-grn-index-column.c +13 -1
- data/ext/groonga/rb-grn-object.c +2 -2
- data/ext/groonga/rb-grn-patricia-trie.c +394 -1
- data/ext/groonga/rb-grn-table.c +33 -2
- data/ext/groonga/rb-grn.h +3 -3
- data/html/index.html +1 -1
- data/lib/1.8/groonga.so +0 -0
- data/lib/1.9/groonga.so +0 -0
- data/lib/groonga/record.rb +32 -2
- data/lib/groonga/schema.rb +1 -1
- data/rroonga-build.rb +3 -3
- data/test/test-patricia-trie.rb +172 -1
- data/test/test-record.rb +7 -0
- data/test/test-remote.rb +2 -1
- data/test/test-table-cursor.rb +35 -1
- data/test/test-table-select-normalize.rb +7 -3
- data/vendor/local/bin/grntest.exe +0 -0
- data/vendor/local/bin/groonga.exe +0 -0
- data/vendor/local/bin/libgroonga-0.dll +0 -0
- data/vendor/local/etc/groonga/groonga.conf +11 -0
- data/vendor/local/etc/groonga/init.d/redhat/groonga +168 -0
- data/vendor/local/etc/groonga/init.d/redhat/sysconfig/groonga +8 -0
- data/vendor/local/include/groonga/groonga.h +38 -12
- data/vendor/local/lib/groonga/modules/suggest/suggest.a +0 -0
- data/vendor/local/lib/groonga/modules/suggest/suggest.dll +0 -0
- data/vendor/local/lib/groonga/modules/suggest/suggest.dll.a +0 -0
- data/vendor/local/lib/groonga/modules/{functions/cast.la → suggest/suggest.la} +6 -6
- data/vendor/local/lib/libgroonga.a +0 -0
- data/vendor/local/lib/libgroonga.dll.a +0 -0
- data/vendor/local/lib/pkgconfig/groonga.pc +1 -1
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-icons_222222_256x240.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-icons_228ef1_256x240.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-icons_ef8c08_256x240.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-icons_ffd27a_256x240.png +0 -0
- data/vendor/local/share/groonga/admin_html/css/ui-lightness/images/ui-icons_ffffff_256x240.png +0 -0
- data/vendor/local/share/groonga/admin_html/images/groonga.png +0 -0
- data/vendor/local/share/groonga/admin_html/images/loading.gif +0 -0
- data/vendor/local/share/groonga/admin_html/js/jquery.json-2.2.min.js +31 -0
- data/vendor/local/share/groonga/doc/ja/html/.buildinfo +4 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/characteristic.txt +56 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands.txt +10 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/cache_limit.txt +52 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/check.txt +164 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/clearlock.txt +61 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/column_create.txt +93 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/column_list.txt +97 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/column_remove.txt +58 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/define_selector.txt +114 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/defrag.txt +57 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/delete.txt +68 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/dump.txt +62 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/load.txt +98 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/log_level.txt +65 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/log_put.txt +69 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/log_reopen.txt +66 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/quit.txt +38 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/select.txt +247 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/shutdown.txt +38 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/status.txt +59 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/suggest.txt +79 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/table_create.txt +111 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/table_list.txt +87 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/table_remove.txt +50 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands/view_add.txt +53 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands_not_implemented/add.txt +102 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands_not_implemented/get.txt +78 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/commands_not_implemented/set.txt +103 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/developer.txt +10 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/developer/com.txt +18 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/developer/document.txt +38 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/developer/query.txt +212 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/developer/test.txt +114 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/execfile.txt +226 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/expr.txt +43 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/functions.txt +10 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/functions/edit_distance.txt +48 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/functions/geo_distance.txt +51 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/functions/geo_in_circle.txt +54 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/functions/geo_in_rectangle.txt +55 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/functions/now.txt +34 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/functions/rand.txt +41 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/grnslap.txt +64 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/grntest.txt +259 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/http.txt +52 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/index.txt +21 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/install.txt +114 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/news.txt +199 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/process.txt +12 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/pseudo_column.txt +38 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/reference.txt +14 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial.txt +10 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial01.txt +293 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial02.txt +100 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial03.txt +72 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial04.txt +111 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial05.txt +65 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial06.txt +91 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial07.txt +92 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial08.txt +53 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial09.txt +9 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/tutorial/tutorial10.txt +486 -0
- data/vendor/local/share/groonga/doc/ja/html/_sources/type.txt +118 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/basic.css +509 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/default.css +277 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/doctools.js +247 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/file.png +0 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/jquery.js +6240 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/minus.png +0 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/plus.png +0 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/pygments.css +61 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/searchtools.js +518 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/sidebar.js +147 -0
- data/vendor/local/share/groonga/doc/ja/html/_static/underscore.js +16 -0
- data/vendor/local/share/groonga/doc/ja/html/characteristic.html +162 -0
- data/vendor/local/share/groonga/doc/ja/html/commands.html +139 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/cache_limit.html +173 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/check.html +285 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/clearlock.html +180 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/column_create.html +210 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/column_list.html +220 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/column_remove.html +183 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/define_selector.html +221 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/defrag.html +177 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/delete.html +182 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/dump.html +177 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/load.html +208 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/log_level.html +187 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/log_put.html +190 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/log_reopen.html +188 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/quit.html +156 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/select.html +331 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/shutdown.html +156 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/status.html +179 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/suggest.html +191 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/table_create.html +222 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/table_list.html +202 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/table_remove.html +173 -0
- data/vendor/local/share/groonga/doc/ja/html/commands/view_add.html +175 -0
- data/vendor/local/share/groonga/doc/ja/html/commands_not_implemented/add.html +180 -0
- data/vendor/local/share/groonga/doc/ja/html/commands_not_implemented/get.html +161 -0
- data/vendor/local/share/groonga/doc/ja/html/commands_not_implemented/set.html +182 -0
- data/vendor/local/share/groonga/doc/ja/html/developer.html +118 -0
- data/vendor/local/share/groonga/doc/ja/html/developer/com.html +136 -0
- data/vendor/local/share/groonga/doc/ja/html/developer/document.html +159 -0
- data/vendor/local/share/groonga/doc/ja/html/developer/query.html +336 -0
- data/vendor/local/share/groonga/doc/ja/html/developer/test.html +220 -0
- data/vendor/local/share/groonga/doc/ja/html/execfile.html +370 -0
- data/vendor/local/share/groonga/doc/ja/html/expr.html +157 -0
- data/vendor/local/share/groonga/doc/ja/html/functions.html +122 -0
- data/vendor/local/share/groonga/doc/ja/html/functions/edit_distance.html +162 -0
- data/vendor/local/share/groonga/doc/ja/html/functions/geo_distance.html +170 -0
- data/vendor/local/share/groonga/doc/ja/html/functions/geo_in_circle.html +173 -0
- data/vendor/local/share/groonga/doc/ja/html/functions/geo_in_rectangle.html +172 -0
- data/vendor/local/share/groonga/doc/ja/html/functions/now.html +152 -0
- data/vendor/local/share/groonga/doc/ja/html/functions/rand.html +159 -0
- data/vendor/local/share/groonga/doc/ja/html/genindex.html +227 -0
- data/vendor/local/share/groonga/doc/ja/html/grnslap.html +183 -0
- data/vendor/local/share/groonga/doc/ja/html/grntest.html +368 -0
- data/vendor/local/share/groonga/doc/ja/html/http.html +163 -0
- data/vendor/local/share/groonga/doc/ja/html/index.html +291 -0
- data/vendor/local/share/groonga/doc/ja/html/install.html +228 -0
- data/vendor/local/share/groonga/doc/ja/html/news.html +310 -0
- data/vendor/local/share/groonga/doc/ja/html/objects.inv +0 -0
- data/vendor/local/share/groonga/doc/ja/html/process.html +120 -0
- data/vendor/local/share/groonga/doc/ja/html/pseudo_column.html +147 -0
- data/vendor/local/share/groonga/doc/ja/html/reference.html +174 -0
- data/vendor/local/share/groonga/doc/ja/html/search.html +96 -0
- data/vendor/local/share/groonga/doc/ja/html/searchindex.js +1 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial.html +172 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial01.html +388 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial02.html +214 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial03.html +183 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial04.html +212 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial05.html +169 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial06.html +209 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial07.html +212 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial08.html +139 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial09.html +114 -0
- data/vendor/local/share/groonga/doc/ja/html/tutorial/tutorial10.html +458 -0
- data/vendor/local/share/groonga/doc/ja/html/type.html +217 -0
- data/vendor/local/share/groonga/doc/ja/source/__init__.py +0 -0
- data/vendor/local/share/groonga/doc/ja/source/characteristic.txt +56 -0
- data/vendor/local/share/groonga/doc/ja/source/commands.txt +10 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/cache_limit.txt +52 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/check.txt +164 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/clearlock.txt +61 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/column_create.txt +93 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/column_list.txt +97 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/column_remove.txt +58 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/define_selector.txt +114 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/defrag.txt +57 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/delete.txt +68 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/dump.txt +62 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/load.txt +98 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/log_level.txt +65 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/log_put.txt +69 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/log_reopen.txt +66 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/quit.txt +38 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/select.txt +247 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/shutdown.txt +38 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/status.txt +59 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/table_create.txt +111 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/table_list.txt +87 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/table_remove.txt +50 -0
- data/vendor/local/share/groonga/doc/ja/source/commands/view_add.txt +53 -0
- data/vendor/local/share/groonga/doc/ja/source/commands_not_implemented/add.txt +102 -0
- data/vendor/local/share/groonga/doc/ja/source/commands_not_implemented/get.txt +78 -0
- data/vendor/local/share/groonga/doc/ja/source/commands_not_implemented/set.txt +103 -0
- data/vendor/local/share/groonga/doc/ja/source/conf.py +265 -0
- data/vendor/local/share/groonga/doc/ja/source/developer.txt +10 -0
- data/vendor/local/share/groonga/doc/ja/source/developer/com.txt +18 -0
- data/vendor/local/share/groonga/doc/ja/source/developer/document.txt +38 -0
- data/vendor/local/share/groonga/doc/ja/source/developer/query.txt +212 -0
- data/vendor/local/share/groonga/doc/ja/source/developer/test.txt +114 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-1.log +6 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-10.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-11.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-12.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-13.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-14.log +9 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-15.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-16.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-17.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-2.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-3.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-4.log +7 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-5.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-6.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-7.log +16 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-8.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial01-9.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial02-1.log +8 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial02-2.log +6 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial02-3.log +12 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial03-1.log +18 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial03-2.log +10 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial03-3.log +10 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial04-1.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial04-2.log +7 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial04-3.log +7 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial04-4.log +13 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial04-5.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial04-6.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial04-7.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial05-1.log +24 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial05-2.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial05-3.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial05-4.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial05-5.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial05-6.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial06-1.log +25 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial06-2.log +9 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial06-3.log +21 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial06-4.log +7 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial06-5.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial07-1.log +22 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial07-2.log +9 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial07-3.log +20 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial07-4.log +9 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial08-1.log +14 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-1.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-10.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-2.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-3.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-4.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-5.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-6.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-7.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-8.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/example/tutorial10-9.log +5 -0
- data/vendor/local/share/groonga/doc/ja/source/execfile.txt +226 -0
- data/vendor/local/share/groonga/doc/ja/source/expr.txt +43 -0
- data/vendor/local/share/groonga/doc/ja/source/functions.txt +10 -0
- data/vendor/local/share/groonga/doc/ja/source/functions/edit_distance.txt +48 -0
- data/vendor/local/share/groonga/doc/ja/source/functions/geo_distance.txt +51 -0
- data/vendor/local/share/groonga/doc/ja/source/functions/geo_in_circle.txt +54 -0
- data/vendor/local/share/groonga/doc/ja/source/functions/geo_in_rectangle.txt +55 -0
- data/vendor/local/share/groonga/doc/ja/source/functions/now.txt +34 -0
- data/vendor/local/share/groonga/doc/ja/source/functions/rand.txt +41 -0
- data/vendor/local/share/groonga/doc/ja/source/grnslap.txt +64 -0
- data/vendor/local/share/groonga/doc/ja/source/grntest.txt +259 -0
- data/vendor/local/share/groonga/doc/ja/source/http.txt +52 -0
- data/vendor/local/share/groonga/doc/ja/source/index.txt +21 -0
- data/vendor/local/share/groonga/doc/ja/source/install.txt +114 -0
- data/vendor/local/share/groonga/doc/ja/source/news.txt +199 -0
- data/vendor/local/share/groonga/doc/ja/source/process.txt +12 -0
- data/vendor/local/share/groonga/doc/ja/source/pseudo_column.txt +38 -0
- data/vendor/local/share/groonga/doc/ja/source/rdoc.py +762 -0
- data/vendor/local/share/groonga/doc/ja/source/reference.txt +14 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial.txt +10 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial01.txt +293 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial02.txt +100 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial03.txt +72 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial04.txt +111 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial05.txt +65 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial06.txt +91 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial07.txt +92 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial08.txt +53 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial09.txt +9 -0
- data/vendor/local/share/groonga/doc/ja/source/tutorial/tutorial10.txt +486 -0
- data/vendor/local/share/groonga/doc/ja/source/type.txt +118 -0
- data/vendor/local/share/groonga/doc/ja/source/update_execution_example.py +113 -0
- data/vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb +46 -0
- data/vendor/local/share/groonga/examples/dictionary/edict/edict_import.sh +10 -0
- data/vendor/local/share/groonga/examples/dictionary/eijiro/eijiro2grn.rb +61 -0
- data/vendor/local/share/groonga/examples/dictionary/eijiro/eijiro_import.sh +10 -0
- data/vendor/local/share/groonga/examples/dictionary/gene95/gene2grn.rb +46 -0
- data/vendor/local/share/groonga/examples/dictionary/gene95/gene_import.sh +10 -0
- data/vendor/local/share/groonga/examples/dictionary/html/css/dictionary.css +3 -0
- data/vendor/local/share/groonga/examples/dictionary/html/index.html +26 -0
- data/vendor/local/share/groonga/examples/dictionary/html/js/dictionary.js +51 -0
- data/vendor/local/share/groonga/examples/dictionary/html/js/jquery-1.4.2.min.js +154 -0
- data/vendor/local/share/groonga/examples/dictionary/init_db.sh +10 -0
- data/vendor/local/share/groonga/examples/dictionary/jmdict/jmdict.rb +42 -0
- data/vendor/local/share/groonga/examples/dictionary/readme.txt +71 -0
- data/vendor/local/share/man/man1/groonga.1 +5498 -0
- metadata +360 -118
- data/pkg-config.rb +0 -333
- data/pkg/rroonga-0.9.5/NEWS.ja.rdoc +0 -156
- data/pkg/rroonga-0.9.5/NEWS.rdoc +0 -158
- data/pkg/rroonga-0.9.5/README.ja.rdoc +0 -65
- data/pkg/rroonga-0.9.5/README.rdoc +0 -66
- data/pkg/rroonga-0.9.5/text/TUTORIAL.ja.rdoc +0 -394
- data/pkg/rroonga-0.9.5/text/expression.rdoc +0 -285
- data/test-unit/Rakefile +0 -40
- data/test-unit/TODO +0 -5
- data/test-unit/bin/testrb +0 -5
- data/test-unit/html/classic.html +0 -15
- data/test-unit/html/index.html +0 -25
- data/test-unit/html/index.html.ja +0 -27
- data/test-unit/lib/test/unit.rb +0 -323
- data/test-unit/lib/test/unit/assertionfailederror.rb +0 -25
- data/test-unit/lib/test/unit/assertions.rb +0 -1230
- data/test-unit/lib/test/unit/attribute.rb +0 -125
- data/test-unit/lib/test/unit/autorunner.rb +0 -360
- data/test-unit/lib/test/unit/collector.rb +0 -36
- data/test-unit/lib/test/unit/collector/descendant.rb +0 -23
- data/test-unit/lib/test/unit/collector/dir.rb +0 -108
- data/test-unit/lib/test/unit/collector/load.rb +0 -144
- data/test-unit/lib/test/unit/collector/objectspace.rb +0 -34
- data/test-unit/lib/test/unit/color-scheme.rb +0 -102
- data/test-unit/lib/test/unit/color.rb +0 -96
- data/test-unit/lib/test/unit/diff.rb +0 -724
- data/test-unit/lib/test/unit/error.rb +0 -130
- data/test-unit/lib/test/unit/exceptionhandler.rb +0 -39
- data/test-unit/lib/test/unit/failure.rb +0 -136
- data/test-unit/lib/test/unit/fixture.rb +0 -176
- data/test-unit/lib/test/unit/notification.rb +0 -129
- data/test-unit/lib/test/unit/omission.rb +0 -191
- data/test-unit/lib/test/unit/pending.rb +0 -150
- data/test-unit/lib/test/unit/priority.rb +0 -180
- data/test-unit/lib/test/unit/runner/console.rb +0 -52
- data/test-unit/lib/test/unit/runner/emacs.rb +0 -8
- data/test-unit/lib/test/unit/runner/tap.rb +0 -8
- data/test-unit/lib/test/unit/testcase.rb +0 -476
- data/test-unit/lib/test/unit/testresult.rb +0 -89
- data/test-unit/lib/test/unit/testsuite.rb +0 -110
- data/test-unit/lib/test/unit/ui/console/outputlevel.rb +0 -14
- data/test-unit/lib/test/unit/ui/console/testrunner.rb +0 -466
- data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +0 -63
- data/test-unit/lib/test/unit/ui/tap/testrunner.rb +0 -92
- data/test-unit/lib/test/unit/ui/testrunner.rb +0 -28
- data/test-unit/lib/test/unit/ui/testrunnermediator.rb +0 -77
- data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +0 -41
- data/test-unit/lib/test/unit/util/backtracefilter.rb +0 -41
- data/test-unit/lib/test/unit/util/method-owner-finder.rb +0 -28
- data/test-unit/lib/test/unit/util/observable.rb +0 -90
- data/test-unit/lib/test/unit/util/procwrapper.rb +0 -48
- data/test-unit/lib/test/unit/version.rb +0 -7
- data/test-unit/sample/adder.rb +0 -13
- data/test-unit/sample/subtracter.rb +0 -12
- data/test-unit/sample/test_adder.rb +0 -20
- data/test-unit/sample/test_subtracter.rb +0 -20
- data/test-unit/sample/test_user.rb +0 -23
- data/test-unit/test/collector/test-descendant.rb +0 -133
- data/test-unit/test/collector/test-load.rb +0 -442
- data/test-unit/test/collector/test_dir.rb +0 -406
- data/test-unit/test/collector/test_objectspace.rb +0 -100
- data/test-unit/test/run-test.rb +0 -15
- data/test-unit/test/test-attribute.rb +0 -86
- data/test-unit/test/test-color-scheme.rb +0 -67
- data/test-unit/test/test-color.rb +0 -47
- data/test-unit/test/test-diff.rb +0 -518
- data/test-unit/test/test-emacs-runner.rb +0 -60
- data/test-unit/test/test-fixture.rb +0 -287
- data/test-unit/test/test-notification.rb +0 -33
- data/test-unit/test/test-omission.rb +0 -81
- data/test-unit/test/test-pending.rb +0 -70
- data/test-unit/test/test-priority.rb +0 -119
- data/test-unit/test/test-testcase.rb +0 -544
- data/test-unit/test/test_assertions.rb +0 -1151
- data/test-unit/test/test_error.rb +0 -26
- data/test-unit/test/test_failure.rb +0 -33
- data/test-unit/test/test_testresult.rb +0 -113
- data/test-unit/test/test_testsuite.rb +0 -129
- data/test-unit/test/testunit-test-util.rb +0 -14
- data/test-unit/test/ui/test_testrunmediator.rb +0 -20
- data/test-unit/test/util/test-method-owner-finder.rb +0 -38
- data/test-unit/test/util/test_backtracefilter.rb +0 -41
- data/test-unit/test/util/test_observable.rb +0 -102
- data/test-unit/test/util/test_procwrapper.rb +0 -36
- data/vendor/local/lib/groonga/modules/functions/cast.dll +0 -0
@@ -0,0 +1,169 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
7
|
+
<head>
|
8
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
9
|
+
|
10
|
+
<title>3.5. ドリルダウン — groonga v1.0.2 documentation</title>
|
11
|
+
<link rel="stylesheet" href="../_static/default.css" type="text/css" />
|
12
|
+
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
13
|
+
<script type="text/javascript">
|
14
|
+
var DOCUMENTATION_OPTIONS = {
|
15
|
+
URL_ROOT: '../',
|
16
|
+
VERSION: '1.0.2',
|
17
|
+
COLLAPSE_INDEX: false,
|
18
|
+
FILE_SUFFIX: '.html',
|
19
|
+
HAS_SOURCE: true
|
20
|
+
};
|
21
|
+
</script>
|
22
|
+
<script type="text/javascript" src="../_static/jquery.js"></script>
|
23
|
+
<script type="text/javascript" src="../_static/underscore.js"></script>
|
24
|
+
<script type="text/javascript" src="../_static/doctools.js"></script>
|
25
|
+
<link rel="top" title="groonga v1.0.2 documentation" href="../index.html" />
|
26
|
+
<link rel="up" title="3. チュートリアル" href="../tutorial.html" />
|
27
|
+
<link rel="next" title="3.6. タグ検索・参照関係の逆引き" href="tutorial06.html" />
|
28
|
+
<link rel="prev" title="3.4. さまざまな検索条件の指定" href="tutorial04.html" />
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div class="related">
|
32
|
+
<h3>Navigation</h3>
|
33
|
+
<ul>
|
34
|
+
<li class="right" style="margin-right: 10px">
|
35
|
+
<a href="../genindex.html" title="General Index"
|
36
|
+
accesskey="I">index</a></li>
|
37
|
+
<li class="right" >
|
38
|
+
<a href="tutorial06.html" title="3.6. タグ検索・参照関係の逆引き"
|
39
|
+
accesskey="N">next</a> |</li>
|
40
|
+
<li class="right" >
|
41
|
+
<a href="tutorial04.html" title="3.4. さまざまな検索条件の指定"
|
42
|
+
accesskey="P">previous</a> |</li>
|
43
|
+
<li><a href="../index.html">groonga v1.0.2 documentation</a> »</li>
|
44
|
+
<li><a href="../tutorial.html" accesskey="U">3. チュートリアル</a> »</li>
|
45
|
+
</ul>
|
46
|
+
</div>
|
47
|
+
|
48
|
+
<div class="document">
|
49
|
+
<div class="documentwrapper">
|
50
|
+
<div class="bodywrapper">
|
51
|
+
<div class="body">
|
52
|
+
|
53
|
+
<div class="section" id="id1">
|
54
|
+
<h1>3.5. ドリルダウン<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h1>
|
55
|
+
<p>groongaでは、特定のカラム値で検索結果をグループ化することができます。これをドリルダウンと呼びます。</p>
|
56
|
+
<p>Siteテーブルに2つのカラムを追加します。TLDドメイン名を格納するdomainカラムと、国名を格納するcountryカラムです。これらのカラムの型は、それぞれドメイン名を主キーとするSiteDomainテーブルと、国名を主キーとするSiteCounteryテーブルとします。</p>
|
57
|
+
<p>実行例</p>
|
58
|
+
<div class="highlight-none"><div class="highlight"><pre>> table_create --name SiteDomain --flags TABLE_HASH_KEY --key_type ShortText
|
59
|
+
[[0,1280378842.01708,0.06822],true]
|
60
|
+
> table_create --name SiteCountry --flags TABLE_HASH_KEY --key_type ShortText
|
61
|
+
[[0,1280378842.28607,0.066339],true]
|
62
|
+
> column_create --table Site --name domain --flags COLUMN_SCALAR --type SiteDomain
|
63
|
+
[[0,1280378842.55314,0.066281],true]
|
64
|
+
> column_create --table Site --name country --flags COLUMN_SCALAR --type SiteCountry
|
65
|
+
[[0,1280378842.82013,0.057988],true]
|
66
|
+
> load --table Site
|
67
|
+
> [
|
68
|
+
> {"_key":"http://example.org/","domain":".org","country":"japan"},
|
69
|
+
> {"_key":"http://example.net/","domain":".net","country":"brazil"},
|
70
|
+
> {"_key":"http://example.com/","domain":".com","country":"japan"},
|
71
|
+
> {"_key":"http://example.net/afr","domain":".net","country":"usa"},
|
72
|
+
> {"_key":"http://example.org/aba","domain":".org","country":"korea"},
|
73
|
+
> {"_key":"http://example.com/rab","domain":".com","country":"china"},
|
74
|
+
> {"_key":"http://example.net/atv","domain":".net","country":"china"},
|
75
|
+
> {"_key":"http://example.org/gat","domain":".org","country":"usa"},
|
76
|
+
> {"_key":"http://example.com/vdw","domain":".com","country":"japan"}
|
77
|
+
> ]
|
78
|
+
[[0,1280378843.07883,2.202888],9]
|
79
|
+
</pre></div>
|
80
|
+
</div>
|
81
|
+
<p>domainカラムとcountryカラムでドリルダウンを行う例を以下に示します。</p>
|
82
|
+
<p>実行例</p>
|
83
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table Site --limit 0 --drilldown domain
|
84
|
+
[[0,1280378845.48263,0.00043],[[[9],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["location","WGS84GeoPoint"],["links","Site"],["link","Site"],["domain","SiteDomain"],["country","SiteCountry"]]],[[3],[["_key","ShortText"],["_nsubrecs","Int32"]],[".org",3],[".net",3],[".com",3]]]]
|
85
|
+
</pre></div>
|
86
|
+
</div>
|
87
|
+
<p>テーブル型を持つカラムに対してドリルダウンを行った場合、参照先のテーブルに存在するカラム値を取得することもできます。ドリルダウンを行ったテーブルには、_nsubrecsという仮想的なカラムが追加されます。このカラムには、グループ化されたレコード数が入ります。</p>
|
88
|
+
<p>実行例</p>
|
89
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table Site --limit 0 --drilldown domain --drilldown_output_columns _id,_key,_nsubrecs
|
90
|
+
[[0,1280378845.68647,0.000267],[[[9],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["location","WGS84GeoPoint"],["links","Site"],["link","Site"],["domain","SiteDomain"],["country","SiteCountry"]]],[[3],[["_id","UInt32"],["_key","ShortText"],["_nsubrecs","Int32"]],[1,".org",3],[2,".net",3],[3,".com",3]]]]
|
91
|
+
</pre></div>
|
92
|
+
</div>
|
93
|
+
<p>複数のカラムに対してドリルダウンを行うことができます。複数のカラムに対してドリルダウンを行う場合には、drilldownパラメータにカラム名をカンマ区切りで与えます。</p>
|
94
|
+
<p>実行例</p>
|
95
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table Site --limit 0 --drilldown domain,country
|
96
|
+
[[0,1280378845.8903,0.000368],[[[9],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["location","WGS84GeoPoint"],["links","Site"],["link","Site"],["domain","SiteDomain"],["country","SiteCountry"]]],[[3],[["_key","ShortText"],["_nsubrecs","Int32"]],[".org",3],[".net",3],[".com",3]],[[5],[["_key","ShortText"],["_nsubrecs","Int32"]],["japan",3],["brazil",1],["usa",2],["korea",1],["china",2]]]]
|
97
|
+
</pre></div>
|
98
|
+
</div>
|
99
|
+
<p>ドリルダウン結果を並びかえることができます。例えば、_nsubrecsパラメータの降順で並び替えることができます。</p>
|
100
|
+
<p>実行例</p>
|
101
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table Site --limit 0 --drilldown country --drilldown_sortby _nsubrecs
|
102
|
+
[[0,1280378846.09517,0.000359],[[[9],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["location","WGS84GeoPoint"],["links","Site"],["link","Site"],["domain","SiteDomain"],["country","SiteCountry"]]],[[5],[["_key","ShortText"],["_nsubrecs","Int32"]],["brazil",1],["korea",1],["usa",2],["china",2],["japan",3]]]]
|
103
|
+
</pre></div>
|
104
|
+
</div>
|
105
|
+
<p>ドリルダウン結果は、デフォルトでは10件のみ表示されます。drilldown_offsetパラメータと、drilldown_limitパラメータによって、offsetとlimitを指定することができます。</p>
|
106
|
+
<p>実行例</p>
|
107
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table Site --limit 0 --drilldown country --drilldown_sortby _nsubrecs --drilldown_limit 2 --drilldown_offset 2
|
108
|
+
[[0,1280378846.2992,0.000326],[[[9],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["location","WGS84GeoPoint"],["links","Site"],["link","Site"],["domain","SiteDomain"],["country","SiteCountry"]]],[[5],[["_key","ShortText"],["_nsubrecs","Int32"]],["usa",2],["china",2]]]]
|
109
|
+
</pre></div>
|
110
|
+
</div>
|
111
|
+
<p>文字列型のカラムに対するドリルダウンは、他の型でのドリルダウンに比べて低速です。文字列でのドリルダウンを行いたい場合には、このチュートリアルのように、文字列型を主キーとするテーブルを別途作成し、そのテーブルを型とするカラムを作成します。</p>
|
112
|
+
</div>
|
113
|
+
|
114
|
+
|
115
|
+
</div>
|
116
|
+
</div>
|
117
|
+
</div>
|
118
|
+
<div class="sphinxsidebar">
|
119
|
+
<div class="sphinxsidebarwrapper">
|
120
|
+
<h4>Previous topic</h4>
|
121
|
+
<p class="topless"><a href="tutorial04.html"
|
122
|
+
title="previous chapter">3.4. さまざまな検索条件の指定</a></p>
|
123
|
+
<h4>Next topic</h4>
|
124
|
+
<p class="topless"><a href="tutorial06.html"
|
125
|
+
title="next chapter">3.6. タグ検索・参照関係の逆引き</a></p>
|
126
|
+
<h3>This Page</h3>
|
127
|
+
<ul class="this-page-menu">
|
128
|
+
<li><a href="../_sources/tutorial/tutorial05.txt"
|
129
|
+
rel="nofollow">Show Source</a></li>
|
130
|
+
</ul>
|
131
|
+
<div id="searchbox" style="display: none">
|
132
|
+
<h3>Quick search</h3>
|
133
|
+
<form class="search" action="../search.html" method="get">
|
134
|
+
<input type="text" name="q" size="18" />
|
135
|
+
<input type="submit" value="Go" />
|
136
|
+
<input type="hidden" name="check_keywords" value="yes" />
|
137
|
+
<input type="hidden" name="area" value="default" />
|
138
|
+
</form>
|
139
|
+
<p class="searchtip" style="font-size: 90%">
|
140
|
+
Enter search terms or a module, class or function name.
|
141
|
+
</p>
|
142
|
+
</div>
|
143
|
+
<script type="text/javascript">$('#searchbox').show(0);</script>
|
144
|
+
</div>
|
145
|
+
</div>
|
146
|
+
<div class="clearer"></div>
|
147
|
+
</div>
|
148
|
+
<div class="related">
|
149
|
+
<h3>Navigation</h3>
|
150
|
+
<ul>
|
151
|
+
<li class="right" style="margin-right: 10px">
|
152
|
+
<a href="../genindex.html" title="General Index"
|
153
|
+
>index</a></li>
|
154
|
+
<li class="right" >
|
155
|
+
<a href="tutorial06.html" title="3.6. タグ検索・参照関係の逆引き"
|
156
|
+
>next</a> |</li>
|
157
|
+
<li class="right" >
|
158
|
+
<a href="tutorial04.html" title="3.4. さまざまな検索条件の指定"
|
159
|
+
>previous</a> |</li>
|
160
|
+
<li><a href="../index.html">groonga v1.0.2 documentation</a> »</li>
|
161
|
+
<li><a href="../tutorial.html" >3. チュートリアル</a> »</li>
|
162
|
+
</ul>
|
163
|
+
</div>
|
164
|
+
<div class="footer">
|
165
|
+
© Copyright 2009-2010, Brazil, Inc.
|
166
|
+
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.1.
|
167
|
+
</div>
|
168
|
+
</body>
|
169
|
+
</html>
|
@@ -0,0 +1,209 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
7
|
+
<head>
|
8
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
9
|
+
|
10
|
+
<title>3.6. タグ検索・参照関係の逆引き — groonga v1.0.2 documentation</title>
|
11
|
+
<link rel="stylesheet" href="../_static/default.css" type="text/css" />
|
12
|
+
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
13
|
+
<script type="text/javascript">
|
14
|
+
var DOCUMENTATION_OPTIONS = {
|
15
|
+
URL_ROOT: '../',
|
16
|
+
VERSION: '1.0.2',
|
17
|
+
COLLAPSE_INDEX: false,
|
18
|
+
FILE_SUFFIX: '.html',
|
19
|
+
HAS_SOURCE: true
|
20
|
+
};
|
21
|
+
</script>
|
22
|
+
<script type="text/javascript" src="../_static/jquery.js"></script>
|
23
|
+
<script type="text/javascript" src="../_static/underscore.js"></script>
|
24
|
+
<script type="text/javascript" src="../_static/doctools.js"></script>
|
25
|
+
<link rel="top" title="groonga v1.0.2 documentation" href="../index.html" />
|
26
|
+
<link rel="up" title="3. チュートリアル" href="../tutorial.html" />
|
27
|
+
<link rel="next" title="3.7. match_columnsパラメータ" href="tutorial07.html" />
|
28
|
+
<link rel="prev" title="3.5. ドリルダウン" href="tutorial05.html" />
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div class="related">
|
32
|
+
<h3>Navigation</h3>
|
33
|
+
<ul>
|
34
|
+
<li class="right" style="margin-right: 10px">
|
35
|
+
<a href="../genindex.html" title="General Index"
|
36
|
+
accesskey="I">index</a></li>
|
37
|
+
<li class="right" >
|
38
|
+
<a href="tutorial07.html" title="3.7. match_columnsパラメータ"
|
39
|
+
accesskey="N">next</a> |</li>
|
40
|
+
<li class="right" >
|
41
|
+
<a href="tutorial05.html" title="3.5. ドリルダウン"
|
42
|
+
accesskey="P">previous</a> |</li>
|
43
|
+
<li><a href="../index.html">groonga v1.0.2 documentation</a> »</li>
|
44
|
+
<li><a href="../tutorial.html" accesskey="U">3. チュートリアル</a> »</li>
|
45
|
+
</ul>
|
46
|
+
</div>
|
47
|
+
|
48
|
+
<div class="document">
|
49
|
+
<div class="documentwrapper">
|
50
|
+
<div class="bodywrapper">
|
51
|
+
<div class="body">
|
52
|
+
|
53
|
+
<div class="section" id="id1">
|
54
|
+
<h1>3.6. タグ検索・参照関係の逆引き<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h1>
|
55
|
+
<p>本チュートリアルで、groongaはカラム値として他のテーブルへの参照の配列を持つことができることを紹介いたしました。実は、テーブルへの参照の配列データを用いることによって、いわゆるタグ検索を行うことが可能となります。</p>
|
56
|
+
<p>タグ検索はgroongaの転置インデックスというデータ構造を用いて高速に行われます。</p>
|
57
|
+
<div class="section" id="id2">
|
58
|
+
<h2>3.6.1. タグ検索<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h2>
|
59
|
+
<p>動画共有サイトの検索エンジンを作ることを想定します。1つの動画には、その動画の特徴を表す、複数の語句が付与されています。「ある語句が付与されている動画の一覧を取得する」検索を行いたいとします。</p>
|
60
|
+
<p>実際に、動画情報のテーブルを作成し、検索をしてみましょう。</p>
|
61
|
+
<p>動画の情報を保存する、Videoテーブルを作成します。Videoテーブルでは、動画のタイトルをtitleカラムに、動画のタグ情報をtagsカラムにTagテーブル型で複数格納しています。
|
62
|
+
タグの情報を保存する、Tagテーブルを作成します。Tagテーブルでは、タグ文字列を主キーに格納し、Videoテーブルのtagsカラムに対するインデックスをindex_tagsカラムに格納しています。</p>
|
63
|
+
<p>実行例</p>
|
64
|
+
<div class="highlight-none"><div class="highlight"><pre>> table_create --name Video --flags TABLE_HASH_KEY --key_type UInt32
|
65
|
+
[[0,1280378923.03769,0.060105],true]
|
66
|
+
> table_create --name Tag --flags TABLE_HASH_KEY --key_type ShortText
|
67
|
+
[[0,1280378923.29856,0.057985],true]
|
68
|
+
> column_create --table Video --name title --flags COLUMN_SCALAR --type ShortText
|
69
|
+
[[0,1280378923.55728,0.067165],true]
|
70
|
+
> column_create --table Video --name tags --flags COLUMN_VECTOR --type Tag
|
71
|
+
[[0,1280378923.82522,0.066382],true]
|
72
|
+
> column_create --table Tag --name index_tags --flags COLUMN_INDEX --type Video --source tags
|
73
|
+
[[0,1280378924.0924,0.122744],true]
|
74
|
+
> load --table Video
|
75
|
+
> [
|
76
|
+
> {"_key":1,"title":"Soccer 2010","tags":["Sports","Soccer"]},
|
77
|
+
> {"_key":2,"title":"Zenigata Kinjirou","tags":["Variety","Money"]},
|
78
|
+
> {"_key":3,"title":"groonga Demo","tags":["IT","Server","groonga"]},
|
79
|
+
> {"_key":4,"title":"Moero!! Ultra Baseball","tags":["Sports","Baseball"]},
|
80
|
+
> {"_key":5,"title":"Hex Gone!","tags":["Variety","Quiz"]},
|
81
|
+
> {"_key":6,"title":"Pikonyan 1","tags":["Animation","Pikonyan"]},
|
82
|
+
> {"_key":7,"title":"Draw 8 Month","tags":["Animation","Raccoon"]},
|
83
|
+
> {"_key":8,"title":"K.O.","tags":["Animation","Music"]}
|
84
|
+
> ]
|
85
|
+
[[0,1280378924.41589,2.002628],8]
|
86
|
+
</pre></div>
|
87
|
+
</div>
|
88
|
+
<p>インデックスカラムを作成すると、全文検索が高速に行えるようになります。インデックスカラムは、対象のカラムに保存されたデータに更新があったとき、自動的に更新されます。</p>
|
89
|
+
<p>「ある語句が付与されている動画の一覧を取得する」検索を行いましょう。</p>
|
90
|
+
<p>実行例</p>
|
91
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table Video --query tags:@Variety --output_columns _key,title
|
92
|
+
[[0,1280378926.6193,0.000444],[[[2],[["_key","UInt32"],["title","ShortText"]],[2,"Zenigata Kinjirou"],[5,"Hex Gone!"]]]]
|
93
|
+
> select --table Video --query tags:@Sports --output_columns _key,title
|
94
|
+
[[0,1280378926.82132,0.000302],[[[2],[["_key","UInt32"],["title","ShortText"]],[1,"Soccer 2010"],[4,"Moero!! Ultra Baseball"]]]]
|
95
|
+
> select --table Video --query tags:@Animation --output_columns _key,title
|
96
|
+
[[0,1280378927.02314,0.000295],[[[3],[["_key","UInt32"],["title","ShortText"]],[6,"Pikonyan 1"],[7,"Draw 8 Month"],[8,"K.O."]]]]
|
97
|
+
</pre></div>
|
98
|
+
</div>
|
99
|
+
<p>このように、「Variety」、「Sports」、「Animation」のようなタグで検索を行うことができました。</p>
|
100
|
+
</div>
|
101
|
+
<div class="section" id="id3">
|
102
|
+
<h2>3.6.2. 参照関係の逆引き<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h2>
|
103
|
+
<p>groongaはテーブル間の参照関係の逆引きを高速に行うためのインデックスを付与することができます。タグ検索は、その1例にすぎません。</p>
|
104
|
+
<p>例えば、ソーシャルネットワーキングサイトにおける友人関係を逆引き検索することができます。</p>
|
105
|
+
<p>以下の例では、ユーザー情報を格納するUserテーブルを作成し、ユーザー名を格納するusernameカラム、ユーザーの友人一覧を配列で格納するfriendsカラムとそのインデックスのindex_friendsカラムを追加しています。</p>
|
106
|
+
<p>実行例</p>
|
107
|
+
<div class="highlight-none"><div class="highlight"><pre>> table_create --name User --flags TABLE_HASH_KEY --key_type ShortText
|
108
|
+
[[0,1280378927.22516,0.091699],true]
|
109
|
+
> column_create --table User --name username --flags COLUMN_SCALAR --type ShortText
|
110
|
+
[[0,1280378927.51764,0.067062],true]
|
111
|
+
> column_create --table User --name friends --flags COLUMN_VECTOR --type User
|
112
|
+
[[0,1280378927.78548,0.05804],true]
|
113
|
+
> column_create --table User --name index_friends --flags COLUMN_INDEX --type User --source friends
|
114
|
+
[[0,1280378928.04428,0.113384],true]
|
115
|
+
> load --table User
|
116
|
+
> [
|
117
|
+
> {"_key":"ken","username":"健作","friends":["taro","jiro","tomo","moritapo"]}
|
118
|
+
> {"_key":"moritapo","username":"森田","friends":["ken","tomo"]}
|
119
|
+
> {"_key":"taro","username":"ぐるんが太郎","friends":["jiro","tomo"]}
|
120
|
+
> {"_key":"jiro","username":"ぐるんが次郎","friends":["taro","tomo"]}
|
121
|
+
> {"_key":"tomo","username":"トモちゃん","friends":["ken","hana"]}
|
122
|
+
> {"_key":"hana","username":"花子","friends":["ken","taro","jiro","moritapo","tomo"]}
|
123
|
+
> ]
|
124
|
+
[[0,1280378928.35845,1.602101],6]
|
125
|
+
</pre></div>
|
126
|
+
</div>
|
127
|
+
<p>指定したユーザーを友人リストに入れているユーザーの一覧を表示してみましょう。</p>
|
128
|
+
<p>実行例</p>
|
129
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table User --query friends:@tomo --output_columns _key,username
|
130
|
+
[[0,1280378930.16145,0.000464],[[[5],[["_key","ShortText"],["username","ShortText"]],["ken","健作"],["taro","ぐるんが太郎"],["jiro","ぐるんが次郎"],["moritapo","森田"],["hana","花子"]]]]
|
131
|
+
> select --table User --query friends:@jiro --output_columns _key,username
|
132
|
+
[[0,1280378930.36419,0.000293],[[[3],[["_key","ShortText"],["username","ShortText"]],["ken","健作"],["taro","ぐるんが太郎"],["hana","花子"]]]]
|
133
|
+
</pre></div>
|
134
|
+
</div>
|
135
|
+
<p>さらに、ドリルダウンを使って、友人リストに入っている数の一覧を表示してみましょう。</p>
|
136
|
+
<p>実行例</p>
|
137
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table User --limit 0 --drilldown friends
|
138
|
+
[[0,1280378930.56663,0.000267],[[[6],[["_id","UInt32"],["_key","ShortText"],["username","ShortText"],["index_friends","User"],["friends","User"]]],[[6],[["_key","ShortText"],["_nsubrecs","Int32"]],["taro",3],["jiro",3],["tomo",5],["moritapo",2],["ken",3],["hana",1]]]]
|
139
|
+
</pre></div>
|
140
|
+
</div>
|
141
|
+
<p>このように、テーブルの参照関係を逆にたどる検索ができました。</p>
|
142
|
+
</div>
|
143
|
+
</div>
|
144
|
+
|
145
|
+
|
146
|
+
</div>
|
147
|
+
</div>
|
148
|
+
</div>
|
149
|
+
<div class="sphinxsidebar">
|
150
|
+
<div class="sphinxsidebarwrapper">
|
151
|
+
<h3><a href="../index.html">Table Of Contents</a></h3>
|
152
|
+
<ul>
|
153
|
+
<li><a class="reference internal" href="#">3.6. タグ検索・参照関係の逆引き</a><ul>
|
154
|
+
<li><a class="reference internal" href="#id2">3.6.1. タグ検索</a></li>
|
155
|
+
<li><a class="reference internal" href="#id3">3.6.2. 参照関係の逆引き</a></li>
|
156
|
+
</ul>
|
157
|
+
</li>
|
158
|
+
</ul>
|
159
|
+
|
160
|
+
<h4>Previous topic</h4>
|
161
|
+
<p class="topless"><a href="tutorial05.html"
|
162
|
+
title="previous chapter">3.5. ドリルダウン</a></p>
|
163
|
+
<h4>Next topic</h4>
|
164
|
+
<p class="topless"><a href="tutorial07.html"
|
165
|
+
title="next chapter">3.7. match_columnsパラメータ</a></p>
|
166
|
+
<h3>This Page</h3>
|
167
|
+
<ul class="this-page-menu">
|
168
|
+
<li><a href="../_sources/tutorial/tutorial06.txt"
|
169
|
+
rel="nofollow">Show Source</a></li>
|
170
|
+
</ul>
|
171
|
+
<div id="searchbox" style="display: none">
|
172
|
+
<h3>Quick search</h3>
|
173
|
+
<form class="search" action="../search.html" method="get">
|
174
|
+
<input type="text" name="q" size="18" />
|
175
|
+
<input type="submit" value="Go" />
|
176
|
+
<input type="hidden" name="check_keywords" value="yes" />
|
177
|
+
<input type="hidden" name="area" value="default" />
|
178
|
+
</form>
|
179
|
+
<p class="searchtip" style="font-size: 90%">
|
180
|
+
Enter search terms or a module, class or function name.
|
181
|
+
</p>
|
182
|
+
</div>
|
183
|
+
<script type="text/javascript">$('#searchbox').show(0);</script>
|
184
|
+
</div>
|
185
|
+
</div>
|
186
|
+
<div class="clearer"></div>
|
187
|
+
</div>
|
188
|
+
<div class="related">
|
189
|
+
<h3>Navigation</h3>
|
190
|
+
<ul>
|
191
|
+
<li class="right" style="margin-right: 10px">
|
192
|
+
<a href="../genindex.html" title="General Index"
|
193
|
+
>index</a></li>
|
194
|
+
<li class="right" >
|
195
|
+
<a href="tutorial07.html" title="3.7. match_columnsパラメータ"
|
196
|
+
>next</a> |</li>
|
197
|
+
<li class="right" >
|
198
|
+
<a href="tutorial05.html" title="3.5. ドリルダウン"
|
199
|
+
>previous</a> |</li>
|
200
|
+
<li><a href="../index.html">groonga v1.0.2 documentation</a> »</li>
|
201
|
+
<li><a href="../tutorial.html" >3. チュートリアル</a> »</li>
|
202
|
+
</ul>
|
203
|
+
</div>
|
204
|
+
<div class="footer">
|
205
|
+
© Copyright 2009-2010, Brazil, Inc.
|
206
|
+
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.1.
|
207
|
+
</div>
|
208
|
+
</body>
|
209
|
+
</html>
|
@@ -0,0 +1,212 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
7
|
+
<head>
|
8
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
9
|
+
|
10
|
+
<title>3.7. match_columnsパラメータ — groonga v1.0.2 documentation</title>
|
11
|
+
<link rel="stylesheet" href="../_static/default.css" type="text/css" />
|
12
|
+
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
13
|
+
<script type="text/javascript">
|
14
|
+
var DOCUMENTATION_OPTIONS = {
|
15
|
+
URL_ROOT: '../',
|
16
|
+
VERSION: '1.0.2',
|
17
|
+
COLLAPSE_INDEX: false,
|
18
|
+
FILE_SUFFIX: '.html',
|
19
|
+
HAS_SOURCE: true
|
20
|
+
};
|
21
|
+
</script>
|
22
|
+
<script type="text/javascript" src="../_static/jquery.js"></script>
|
23
|
+
<script type="text/javascript" src="../_static/underscore.js"></script>
|
24
|
+
<script type="text/javascript" src="../_static/doctools.js"></script>
|
25
|
+
<link rel="top" title="groonga v1.0.2 documentation" href="../index.html" />
|
26
|
+
<link rel="up" title="3. チュートリアル" href="../tutorial.html" />
|
27
|
+
<link rel="next" title="3.8. 主キーによる前方一致検索" href="tutorial08.html" />
|
28
|
+
<link rel="prev" title="3.6. タグ検索・参照関係の逆引き" href="tutorial06.html" />
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div class="related">
|
32
|
+
<h3>Navigation</h3>
|
33
|
+
<ul>
|
34
|
+
<li class="right" style="margin-right: 10px">
|
35
|
+
<a href="../genindex.html" title="General Index"
|
36
|
+
accesskey="I">index</a></li>
|
37
|
+
<li class="right" >
|
38
|
+
<a href="tutorial08.html" title="3.8. 主キーによる前方一致検索"
|
39
|
+
accesskey="N">next</a> |</li>
|
40
|
+
<li class="right" >
|
41
|
+
<a href="tutorial06.html" title="3.6. タグ検索・参照関係の逆引き"
|
42
|
+
accesskey="P">previous</a> |</li>
|
43
|
+
<li><a href="../index.html">groonga v1.0.2 documentation</a> »</li>
|
44
|
+
<li><a href="../tutorial.html" accesskey="U">3. チュートリアル</a> »</li>
|
45
|
+
</ul>
|
46
|
+
</div>
|
47
|
+
|
48
|
+
<div class="document">
|
49
|
+
<div class="documentwrapper">
|
50
|
+
<div class="bodywrapper">
|
51
|
+
<div class="body">
|
52
|
+
|
53
|
+
<div class="section" id="match-columns">
|
54
|
+
<h1>3.7. match_columnsパラメータ<a class="headerlink" href="#match-columns" title="Permalink to this headline">¶</a></h1>
|
55
|
+
<div class="section" id="id1">
|
56
|
+
<h2>3.7.1. 複数のカラムを対象とした全文検索<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2>
|
57
|
+
<p>groongaでは、複数のカラムを対象とした全文検索を行うことができます。例えば、ブログのテーブルで、タイトルと内容とがそれぞれ別のカラムに入ったものがあるとしましょう。「タイトルもしくは内容に特定の単語を含む」検索を行いたいとします。</p>
|
58
|
+
<p>この場合、2つのインデックス作成方式があります。1つは、それぞれのカラムに1つずつインデックスを付与する方式です。もう1つは、複数のカラムに対して1つのインデックスを付与する方式です。groongaでは、どちらの形式のインデックスが存在している場合でも、同一の記法で全文検索を行うことができます。</p>
|
59
|
+
<div class="section" id="id2">
|
60
|
+
<h3>3.7.1.1. カラムごとにインデックスを付与する場合<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h3>
|
61
|
+
<p>Blog1テーブルを作り、タイトル文字列のtitleカラム、本文のmessageカラムを追加しています。
|
62
|
+
インデックス用のIndexBlog1テーブルも作り、titleカラムのインデックス用にindex_titleカラム、messageカラムのインデック用にindex_messageカラムと、それぞれ1カラムごとに1つずつ追加しています。</p>
|
63
|
+
<p>実行例</p>
|
64
|
+
<div class="highlight-none"><div class="highlight"><pre>> table_create --name Blog1 --flags TABLE_HASH_KEY --key_type ShortText
|
65
|
+
[[0,1280378807.97095,0.074659],true]
|
66
|
+
> column_create --table Blog1 --name title --flags COLUMN_SCALAR --type ShortText
|
67
|
+
[[0,1280378808.24637,0.058739],true]
|
68
|
+
> column_create --table Blog1 --name message --flags COLUMN_SCALAR --type ShortText
|
69
|
+
[[0,1280378808.50589,0.074658],true]
|
70
|
+
> table_create --name IndexBlog1 --flags TABLE_PAT_KEY|KEY_NORMALIZE --key_type ShortText --default_tokenizer TokenBigram
|
71
|
+
[[0,1280378808.78136,0.065557],true]
|
72
|
+
> column_create --table IndexBlog1 --name index_title --flags COLUMN_INDEX|WITH_POSITION --type Blog1 --source title
|
73
|
+
[[0,1280378809.04764,0.147413],true]
|
74
|
+
> column_create --table IndexBlog1 --name index_message --flags COLUMN_INDEX|WITH_POSITION --type Blog1 --source message
|
75
|
+
[[0,1280378809.39584,0.124963],true]
|
76
|
+
> load --table Blog1
|
77
|
+
> [
|
78
|
+
> {"_key":"grn1","title":"groonga test","message":"groonga message"},
|
79
|
+
> {"_key":"grn2","title":"baseball result","message":"rakutan eggs 4 - 4 groonga moritars"},
|
80
|
+
> {"_key":"grn3","title":"groonga message","message":"none"}
|
81
|
+
> ]
|
82
|
+
[[0,1280378809.72157,1.001442],3]
|
83
|
+
</pre></div>
|
84
|
+
</div>
|
85
|
+
<p>match_columnsオプションで、検索対象のカラムを複数指定することが出来ます。検索する文字列はqueryオプションで指定します。これを使うことで、タイトルと本文を全文検索することができます。</p>
|
86
|
+
<p>実際に検索してみましょう。</p>
|
87
|
+
<p>実行例</p>
|
88
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table Blog1 --match_columns title||message --query groonga
|
89
|
+
[[0,1280378810.92387,0.0008],[[[3],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["message","ShortText"]],[1,"grn1","groonga test","groonga message"],[3,"grn3","groonga message","none"],[2,"grn2","baseball result","rakutan eggs 4 - 4 groonga moritars"]]]]
|
90
|
+
> select --table Blog1 --match_columns title||message --query message
|
91
|
+
[[0,1280378811.12754,0.000547],[[[2],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["message","ShortText"]],[3,"grn3","groonga message","none"],[1,"grn1","groonga test","groonga message"]]]]
|
92
|
+
> select --table Blog1 --match_columns title --query message
|
93
|
+
[[0,1280378811.33043,0.000482],[[[1],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["message","ShortText"]],[3,"grn3","groonga message","none"]]]]
|
94
|
+
</pre></div>
|
95
|
+
</div>
|
96
|
+
</div>
|
97
|
+
<div class="section" id="id3">
|
98
|
+
<h3>3.7.1.2. 複数のカラムにまたがったインデックスを付与する場合<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3>
|
99
|
+
<p>内容は上の例とほぼ同じですが、titleとmessageの2つのカラムに対するインデックスが共通になっており、インデックスカラムが1つしかありません。</p>
|
100
|
+
<p>共通のインデックスを用いても、titleカラムのみでの検索、messageカラムのみでの検索、titleもしくはmessageカラムでの検索、全ての検索を行うことができます。</p>
|
101
|
+
<p>実行例</p>
|
102
|
+
<div class="highlight-none"><div class="highlight"><pre>> table_create --name Blog2 --flags TABLE_HASH_KEY --key_type ShortText
|
103
|
+
[[0,1280378811.53299,0.099804],true]
|
104
|
+
> column_create --table Blog2 --name title --flags COLUMN_SCALAR --type ShortText
|
105
|
+
[[0,1280378811.83359,0.058761],true]
|
106
|
+
> column_create --table Blog2 --name message --flags COLUMN_SCALAR --type ShortText
|
107
|
+
[[0,1280378812.09316,0.05801],true]
|
108
|
+
> table_create --name IndexBlog2 --flags TABLE_PAT_KEY|KEY_NORMALIZE --key_type ShortText --default_tokenizer TokenBigram
|
109
|
+
[[0,1280378812.35194,0.057196],true]
|
110
|
+
> column_create --table IndexBlog2 --name index_blog --flags COLUMN_INDEX|WITH_POSITION|WITH_SECTION --type Blog2 --source title,message
|
111
|
+
[[0,1280378812.60988,0.113983],true]
|
112
|
+
> load --table Blog2
|
113
|
+
> [
|
114
|
+
> {"_key":"grn1","title":"groonga test","message":"groonga message"},
|
115
|
+
> {"_key":"grn2","title":"baseball result","message":"rakutan eggs 4 - 4 groonga moritars"},
|
116
|
+
> {"_key":"grn3","title":"groonga message","message":"none"}
|
117
|
+
> ]
|
118
|
+
[[0,1280378812.92463,1.001314],3]
|
119
|
+
</pre></div>
|
120
|
+
</div>
|
121
|
+
<p>実際に検索してみましょう。結果は上の例と同じになります。</p>
|
122
|
+
<p>実行例</p>
|
123
|
+
<div class="highlight-none"><div class="highlight"><pre>> select --table Blog2 --match_columns title||message --query groonga
|
124
|
+
[[0,1280378814.12681,0.000585],[[[3],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["message","ShortText"]],[1,"grn1","groonga test","groonga message"],[2,"grn2","baseball result","rakutan eggs 4 - 4 groonga moritars"],[3,"grn3","groonga message","none"]]]]
|
125
|
+
> select --table Blog2 --match_columns title||message --query message
|
126
|
+
[[0,1280378814.33044,0.000508],[[[2],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["message","ShortText"]],[1,"grn1","groonga test","groonga message"],[3,"grn3","groonga message","none"]]]]
|
127
|
+
> select --table Blog2 --match_columns title --query message
|
128
|
+
[[0,1280378814.53323,0.000486],[[[1],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"],["message","ShortText"]],[3,"grn3","groonga message","none"]]]]
|
129
|
+
</pre></div>
|
130
|
+
</div>
|
131
|
+
</div>
|
132
|
+
</div>
|
133
|
+
<div class="section" id="id4">
|
134
|
+
<h2>3.7.2. インデックス名を指定した全文検索<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h2>
|
135
|
+
<p>執筆中です。</p>
|
136
|
+
</div>
|
137
|
+
<div class="section" id="id5">
|
138
|
+
<h2>3.7.3. インデックスの重み<a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h2>
|
139
|
+
<p>執筆中です。</p>
|
140
|
+
</div>
|
141
|
+
</div>
|
142
|
+
|
143
|
+
|
144
|
+
</div>
|
145
|
+
</div>
|
146
|
+
</div>
|
147
|
+
<div class="sphinxsidebar">
|
148
|
+
<div class="sphinxsidebarwrapper">
|
149
|
+
<h3><a href="../index.html">Table Of Contents</a></h3>
|
150
|
+
<ul>
|
151
|
+
<li><a class="reference internal" href="#">3.7. match_columnsパラメータ</a><ul>
|
152
|
+
<li><a class="reference internal" href="#id1">3.7.1. 複数のカラムを対象とした全文検索</a><ul>
|
153
|
+
<li><a class="reference internal" href="#id2">3.7.1.1. カラムごとにインデックスを付与する場合</a></li>
|
154
|
+
<li><a class="reference internal" href="#id3">3.7.1.2. 複数のカラムにまたがったインデックスを付与する場合</a></li>
|
155
|
+
</ul>
|
156
|
+
</li>
|
157
|
+
<li><a class="reference internal" href="#id4">3.7.2. インデックス名を指定した全文検索</a></li>
|
158
|
+
<li><a class="reference internal" href="#id5">3.7.3. インデックスの重み</a></li>
|
159
|
+
</ul>
|
160
|
+
</li>
|
161
|
+
</ul>
|
162
|
+
|
163
|
+
<h4>Previous topic</h4>
|
164
|
+
<p class="topless"><a href="tutorial06.html"
|
165
|
+
title="previous chapter">3.6. タグ検索・参照関係の逆引き</a></p>
|
166
|
+
<h4>Next topic</h4>
|
167
|
+
<p class="topless"><a href="tutorial08.html"
|
168
|
+
title="next chapter">3.8. 主キーによる前方一致検索</a></p>
|
169
|
+
<h3>This Page</h3>
|
170
|
+
<ul class="this-page-menu">
|
171
|
+
<li><a href="../_sources/tutorial/tutorial07.txt"
|
172
|
+
rel="nofollow">Show Source</a></li>
|
173
|
+
</ul>
|
174
|
+
<div id="searchbox" style="display: none">
|
175
|
+
<h3>Quick search</h3>
|
176
|
+
<form class="search" action="../search.html" method="get">
|
177
|
+
<input type="text" name="q" size="18" />
|
178
|
+
<input type="submit" value="Go" />
|
179
|
+
<input type="hidden" name="check_keywords" value="yes" />
|
180
|
+
<input type="hidden" name="area" value="default" />
|
181
|
+
</form>
|
182
|
+
<p class="searchtip" style="font-size: 90%">
|
183
|
+
Enter search terms or a module, class or function name.
|
184
|
+
</p>
|
185
|
+
</div>
|
186
|
+
<script type="text/javascript">$('#searchbox').show(0);</script>
|
187
|
+
</div>
|
188
|
+
</div>
|
189
|
+
<div class="clearer"></div>
|
190
|
+
</div>
|
191
|
+
<div class="related">
|
192
|
+
<h3>Navigation</h3>
|
193
|
+
<ul>
|
194
|
+
<li class="right" style="margin-right: 10px">
|
195
|
+
<a href="../genindex.html" title="General Index"
|
196
|
+
>index</a></li>
|
197
|
+
<li class="right" >
|
198
|
+
<a href="tutorial08.html" title="3.8. 主キーによる前方一致検索"
|
199
|
+
>next</a> |</li>
|
200
|
+
<li class="right" >
|
201
|
+
<a href="tutorial06.html" title="3.6. タグ検索・参照関係の逆引き"
|
202
|
+
>previous</a> |</li>
|
203
|
+
<li><a href="../index.html">groonga v1.0.2 documentation</a> »</li>
|
204
|
+
<li><a href="../tutorial.html" >3. チュートリアル</a> »</li>
|
205
|
+
</ul>
|
206
|
+
</div>
|
207
|
+
<div class="footer">
|
208
|
+
© Copyright 2009-2010, Brazil, Inc.
|
209
|
+
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.1.
|
210
|
+
</div>
|
211
|
+
</body>
|
212
|
+
</html>
|