rroonga 4.0.8-x86-mingw32 → 5.0.0-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.
- checksums.yaml +8 -8
 - data/README.md +2 -2
 - data/doc/text/news.textile +19 -0
 - data/ext/groonga/rb-grn-exception.c +35 -1
 - data/ext/groonga/rb-grn-normalizer.c +37 -7
 - data/ext/groonga/rb-grn-table.c +106 -35
 - data/ext/groonga/rb-grn.h +3 -2
 - data/lib/1.9/groonga.so +0 -0
 - data/lib/2.0/groonga.so +0 -0
 - data/lib/2.1/groonga.so +0 -0
 - data/lib/groonga/record.rb +45 -1
 - data/rroonga-build.rb +6 -5
 - data/test/groonga-test-utils.rb +9 -0
 - data/test/test-array.rb +11 -0
 - data/test/test-exception.rb +3 -1
 - data/test/test-normalizer.rb +28 -0
 - data/test/test-record.rb +34 -0
 - data/test/test-table-group.rb +366 -0
 - data/test/test-table.rb +0 -182
 - data/vendor/local/bin/grndb.exe +0 -0
 - data/vendor/local/bin/groonga-benchmark.exe +0 -0
 - data/vendor/local/bin/groonga.exe +0 -0
 - data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
 - data/vendor/local/bin/libgroonga-0.dll +0 -0
 - data/vendor/local/bin/libmecab-1.dll +0 -0
 - data/vendor/local/bin/libmsgpack-3.dll +0 -0
 - data/vendor/local/bin/libmsgpackc-2.dll +0 -0
 - data/vendor/local/bin/libonig-5.dll +0 -0
 - data/vendor/local/bin/libstdc++-6.dll +0 -0
 - data/vendor/local/bin/lz4.exe +0 -0
 - data/vendor/local/bin/lz4c.exe +0 -0
 - data/vendor/local/bin/lz4cat +0 -0
 - data/vendor/local/bin/mecab-config +2 -2
 - data/vendor/local/bin/mecab.exe +0 -0
 - data/vendor/local/bin/onig-config +1 -1
 - data/vendor/local/bin/zlib1.dll +0 -0
 - data/vendor/local/etc/groonga/httpd/groonga-httpd.conf +2 -2
 - data/vendor/local/include/groonga/groonga.h +2 -1
 - data/vendor/local/include/groonga/groonga/command.h +79 -0
 - data/vendor/local/include/groonga/groonga/groonga.h +32 -74
 - data/vendor/local/include/groonga/groonga/output.h +108 -0
 - data/vendor/local/include/groonga/groonga/plugin.h +18 -3
 - data/vendor/local/lib/groonga/plugins/query_expanders/tsv.a +0 -0
 - data/vendor/local/lib/groonga/plugins/query_expanders/tsv.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/query_expanders/tsv.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/query_expanders/tsv.la +3 -3
 - data/vendor/local/lib/groonga/plugins/ruby/eval.a +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/eval.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/eval.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/eval.la +3 -3
 - data/vendor/local/lib/groonga/plugins/ruby/load.a +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/load.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/load.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/load.la +3 -3
 - data/vendor/local/lib/groonga/plugins/sharding.rb +3 -0
 - data/vendor/local/lib/groonga/plugins/sharding/logical_count.rb +157 -0
 - data/vendor/local/lib/groonga/plugins/sharding/logical_enumerator.rb +170 -0
 - data/vendor/local/lib/groonga/plugins/sharding/logical_range_filter.rb +50 -0
 - data/vendor/local/lib/groonga/plugins/suggest/suggest.a +0 -0
 - data/vendor/local/lib/groonga/plugins/suggest/suggest.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/suggest/suggest.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/suggest/suggest.la +3 -3
 - data/vendor/local/lib/groonga/plugins/table/table.a +0 -0
 - data/vendor/local/lib/groonga/plugins/table/table.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/table/table.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/table/table.la +3 -3
 - data/vendor/local/lib/groonga/plugins/token_filters/stop_word.a +0 -0
 - data/vendor/local/lib/groonga/plugins/token_filters/stop_word.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/token_filters/stop_word.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/token_filters/stop_word.la +3 -3
 - data/vendor/local/lib/groonga/plugins/tokenizers/mecab.a +0 -0
 - data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/tokenizers/mecab.la +3 -3
 - data/vendor/local/lib/groonga/scripts/ruby/command.rb +35 -0
 - data/vendor/local/lib/groonga/scripts/ruby/{command → command_line}/grndb.rb +1 -1
 - data/vendor/local/lib/groonga/scripts/ruby/context.rb +29 -8
 - data/vendor/local/lib/groonga/scripts/ruby/context/rc.rb +166 -76
 - data/vendor/local/lib/groonga/scripts/ruby/database.rb +16 -4
 - data/vendor/local/lib/groonga/scripts/ruby/error.rb +16 -0
 - data/vendor/local/lib/groonga/scripts/ruby/index_cursor.rb +18 -0
 - data/vendor/local/lib/groonga/scripts/ruby/initialize/post.rb +10 -0
 - data/vendor/local/lib/groonga/scripts/ruby/logger.rb +5 -1
 - data/vendor/local/lib/groonga/scripts/ruby/plugin_loader.rb +14 -0
 - data/vendor/local/lib/groonga/scripts/ruby/require.rb +1 -1
 - data/vendor/local/lib/groonga/scripts/ruby/scan_info_builder.rb +3 -3
 - data/vendor/local/lib/groonga/scripts/ruby/scan_info_data.rb +4 -2
 - data/vendor/local/lib/groonga/scripts/ruby/table_cursor.rb +15 -0
 - data/vendor/local/lib/groonga/scripts/ruby/writer.rb +21 -0
 - data/vendor/local/lib/libgroonga.a +0 -0
 - data/vendor/local/lib/libgroonga.dll.a +0 -0
 - data/vendor/local/lib/libgroonga.la +3 -3
 - data/vendor/local/lib/liblz4.a +0 -0
 - data/vendor/local/lib/liblz4.dll +0 -0
 - data/vendor/local/lib/liblz4.dll.1 +0 -0
 - data/vendor/local/lib/liblz4.dll.1.5.0 +0 -0
 - data/vendor/local/lib/libmecab.a +0 -0
 - data/vendor/local/lib/libmecab.dll.a +0 -0
 - data/vendor/local/lib/libmecab.la +2 -2
 - data/vendor/local/lib/libmsgpack.a +0 -0
 - data/vendor/local/lib/libmsgpack.dll.a +0 -0
 - data/vendor/local/lib/libmsgpack.la +2 -2
 - data/vendor/local/lib/libmsgpackc.a +0 -0
 - data/vendor/local/lib/libmsgpackc.dll.a +0 -0
 - data/vendor/local/lib/libmsgpackc.la +2 -2
 - data/vendor/local/lib/libonig.a +0 -0
 - data/vendor/local/lib/libonig.dll.a +0 -0
 - data/vendor/local/lib/libonig.la +2 -2
 - data/vendor/local/lib/libz.a +0 -0
 - data/vendor/local/lib/libz.dll.a +0 -0
 - data/vendor/local/lib/pkgconfig/groonga.pc +3 -3
 - data/vendor/local/lib/pkgconfig/liblz4.pc +5 -5
 - data/vendor/local/lib/pkgconfig/msgpack.pc +1 -1
 - data/vendor/local/lib/pkgconfig/oniguruma.pc +6 -6
 - data/vendor/local/lib/pkgconfig/zlib.pc +3 -3
 - data/vendor/local/libexec/mecab/mecab-cost-train.exe +0 -0
 - data/vendor/local/libexec/mecab/mecab-dict-gen.exe +0 -0
 - data/vendor/local/libexec/mecab/mecab-dict-index.exe +0 -0
 - data/vendor/local/libexec/mecab/mecab-system-eval.exe +0 -0
 - data/vendor/local/libexec/mecab/mecab-test-gen.exe +0 -0
 - data/vendor/local/sbin/groonga-httpd-restart +1 -1
 - data/vendor/local/sbin/groonga-httpd.exe +0 -0
 - data/vendor/local/share/doc/groonga/en/html/.buildinfo +1 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/centos.txt +3 -3
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/debian.txt +4 -4
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/fedora.txt +3 -3
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/mac_os_x.txt +5 -5
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/others.txt +3 -3
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/solaris.txt +3 -3
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/ubuntu.txt +4 -4
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/windows.txt +9 -9
 - data/vendor/local/share/doc/groonga/en/html/_sources/news.txt +16 -570
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/2.x.txt +5 -4
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/3.x.txt +1 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/4.x.txt +686 -0
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference.txt +0 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/api/grn_ctx.txt +3 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/column.txt +12 -4
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/columns/index.txt +19 -0
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/columns/pseudo.txt +2 -2
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/columns/scalar.txt +19 -0
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/commands/select.txt +734 -29
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/functions/html_untag.txt +2 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/grn_expr/query_syntax.txt +8 -7
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/grn_expr/script_syntax.txt +50 -0
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/suggest/completion.txt +25 -23
 - data/vendor/local/share/doc/groonga/en/html/_sources/server/http.txt +1 -1
 - data/vendor/local/share/doc/groonga/en/html/_static/basic.css +68 -6
 - data/vendor/local/share/doc/groonga/en/html/_static/doctools.js +26 -1
 - data/vendor/local/share/doc/groonga/en/html/_static/down-pressed.png +0 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/down.png +0 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/file.png +0 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/jquery-1.11.1.js +10308 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/jquery.js +4 -2
 - data/vendor/local/share/doc/groonga/en/html/_static/minus.png +0 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/plus.png +0 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/searchtools.js +2 -2
 - data/vendor/local/share/doc/groonga/en/html/_static/underscore-1.3.1.js +999 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/up-pressed.png +0 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/up.png +0 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/websupport.js +15 -15
 - data/vendor/local/share/doc/groonga/en/html/characteristic.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/client.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/community.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/contribution/development.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/com.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/cooperation.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/query.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/release.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/repository.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/test.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/documentation.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/documentation/c-api.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/documentation/i18n.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/contribution/documentation/introduction.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/contribution/report.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/development.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/development/travis-ci.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/genindex.html +13 -13
 - data/vendor/local/share/doc/groonga/en/html/index.html +86 -78
 - data/vendor/local/share/doc/groonga/en/html/install.html +36 -34
 - data/vendor/local/share/doc/groonga/en/html/install/centos.html +31 -29
 - data/vendor/local/share/doc/groonga/en/html/install/debian.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/install/fedora.html +28 -26
 - data/vendor/local/share/doc/groonga/en/html/install/mac_os_x.html +33 -30
 - data/vendor/local/share/doc/groonga/en/html/install/others.html +90 -88
 - data/vendor/local/share/doc/groonga/en/html/install/solaris.html +25 -23
 - data/vendor/local/share/doc/groonga/en/html/install/ubuntu.html +28 -26
 - data/vendor/local/share/doc/groonga/en/html/install/windows.html +33 -31
 - data/vendor/local/share/doc/groonga/en/html/limitations.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/news.html +99 -641
 - data/vendor/local/share/doc/groonga/en/html/news/0.x.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/news/1.0.x.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/news/1.1.x.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/news/1.2.x.html +35 -33
 - data/vendor/local/share/doc/groonga/en/html/news/1.3.x.html +30 -28
 - data/vendor/local/share/doc/groonga/en/html/news/2.x.html +103 -100
 - data/vendor/local/share/doc/groonga/en/html/news/3.x.html +72 -70
 - data/vendor/local/share/doc/groonga/en/html/news/4.x.html +873 -0
 - data/vendor/local/share/doc/groonga/en/html/news/senna.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/objects.inv +0 -0
 - data/vendor/local/share/doc/groonga/en/html/reference.html +83 -75
 - data/vendor/local/share/doc/groonga/en/html/reference/api.html +40 -38
 - data/vendor/local/share/doc/groonga/en/html/reference/api/global_configurations.html +34 -32
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_cache.html +46 -44
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_column.html +68 -66
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_command_version.html +30 -28
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_content_type.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_ctx.html +66 -62
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_db.html +36 -34
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_encoding.html +31 -29
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_expr.html +67 -65
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_geo.html +29 -27
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_hook.html +32 -30
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_ii.html +30 -28
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_index_cursor.html +29 -27
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_info.html +29 -27
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_match_escalation.html +28 -26
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_obj.html +77 -75
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_proc.html +32 -30
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_search.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_table.html +63 -61
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_table_cursor.html +52 -50
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_type.html +28 -26
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_user_data.html +25 -23
 - data/vendor/local/share/doc/groonga/en/html/reference/api/plugin.html +43 -41
 - data/vendor/local/share/doc/groonga/en/html/reference/cast.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/column.html +35 -33
 - data/vendor/local/share/doc/groonga/en/html/reference/columns/index.html +152 -0
 - data/vendor/local/share/doc/groonga/en/html/reference/columns/pseudo.html +56 -29
 - data/vendor/local/share/doc/groonga/en/html/reference/columns/scalar.html +152 -0
 - data/vendor/local/share/doc/groonga/en/html/reference/columns/vector.html +121 -94
 - data/vendor/local/share/doc/groonga/en/html/reference/command.html +55 -53
 - data/vendor/local/share/doc/groonga/en/html/reference/command/command_version.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/command/output_format.html +56 -54
 - data/vendor/local/share/doc/groonga/en/html/reference/command/request_id.html +25 -23
 - data/vendor/local/share/doc/groonga/en/html/reference/command/return_code.html +97 -95
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/cache_limit.html +41 -39
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/check.html +46 -44
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/clearlock.html +26 -24
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/column_create.html +42 -40
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/column_list.html +74 -72
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/column_remove.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/column_rename.html +44 -42
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/define_selector.html +40 -38
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/defrag.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/delete.html +36 -34
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/dump.html +25 -23
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/load.html +43 -41
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/lock_clear.html +34 -32
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/log_level.html +26 -24
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/log_put.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/log_reopen.html +25 -23
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/normalize.html +62 -60
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/normalizer_list.html +32 -30
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/quit.html +24 -22
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/range_filter.html +24 -22
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/register.html +37 -35
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/request_cancel.html +54 -52
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/ruby_eval.html +38 -36
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/ruby_load.html +38 -36
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/select.html +3069 -567
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/shutdown.html +24 -22
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/status.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/suggest.html +66 -64
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/table_create.html +123 -121
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/table_list.html +36 -34
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/table_remove.html +26 -24
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/table_tokenize.html +46 -44
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/tokenize.html +82 -80
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/tokenizer_list.html +32 -30
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/truncate.html +39 -37
 - data/vendor/local/share/doc/groonga/en/html/reference/executables.html +22 -20
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/grndb.html +38 -36
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/grnslap.html +24 -22
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-benchmark.html +29 -27
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-httpd.html +76 -74
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-server-http.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-suggest-create-dataset.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-suggest-httpd.html +45 -43
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-suggest-learner.html +37 -35
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga.html +58 -56
 - data/vendor/local/share/doc/groonga/en/html/reference/function.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/between.html +43 -41
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/edit_distance.html +22 -20
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_distance.html +82 -80
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_in_circle.html +33 -31
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_in_rectangle.html +23 -21
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/highlight_full.html +54 -52
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/highlight_html.html +42 -40
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/html_untag.html +32 -29
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/in_values.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/now.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/query.html +49 -47
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/rand.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/snippet_html.html +45 -43
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/sub_filter.html +42 -40
 - data/vendor/local/share/doc/groonga/en/html/reference/grn_expr.html +27 -25
 - data/vendor/local/share/doc/groonga/en/html/reference/grn_expr/query_syntax.html +219 -216
 - data/vendor/local/share/doc/groonga/en/html/reference/grn_expr/script_syntax.html +430 -381
 - data/vendor/local/share/doc/groonga/en/html/reference/indexing.html +22 -20
 - data/vendor/local/share/doc/groonga/en/html/reference/log.html +23 -21
 - data/vendor/local/share/doc/groonga/en/html/reference/normalizers.html +52 -50
 - data/vendor/local/share/doc/groonga/en/html/reference/operations.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/operations/geolocation_search.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/output.html +35 -33
 - data/vendor/local/share/doc/groonga/en/html/reference/query_expanders.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/query_expanders/tsv.html +58 -56
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest/completion.html +46 -41
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest/correction.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest/introduction.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest/suggestion.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/tables.html +55 -53
 - data/vendor/local/share/doc/groonga/en/html/reference/token_filters.html +39 -37
 - data/vendor/local/share/doc/groonga/en/html/reference/tokenizers.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/reference/tuning.html +30 -28
 - data/vendor/local/share/doc/groonga/en/html/reference/types.html +38 -36
 - data/vendor/local/share/doc/groonga/en/html/search.html +12 -12
 - data/vendor/local/share/doc/groonga/en/html/searchindex.js +1 -1
 - data/vendor/local/share/doc/groonga/en/html/server.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/server/gqtp.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/server/http.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/server/http/comparison.html +34 -32
 - data/vendor/local/share/doc/groonga/en/html/server/http/groonga-httpd.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/server/http/groonga.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/server/package.html +34 -32
 - data/vendor/local/share/doc/groonga/en/html/spec.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/spec/gqtp.html +128 -126
 - data/vendor/local/share/doc/groonga/en/html/spec/search.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/troubleshooting.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/troubleshooting/different_results_with_the_same_keyword.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/troubleshooting/mmap_cannot_allocate_memory.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/tutorial.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/tutorial/data.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/tutorial/drilldown.html +34 -32
 - data/vendor/local/share/doc/groonga/en/html/tutorial/index.html +23 -21
 - data/vendor/local/share/doc/groonga/en/html/tutorial/introduction.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/tutorial/lexicon.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/tutorial/match_columns.html +24 -22
 - data/vendor/local/share/doc/groonga/en/html/tutorial/micro_blog.html +53 -51
 - data/vendor/local/share/doc/groonga/en/html/tutorial/network.html +20 -18
 - data/vendor/local/share/doc/groonga/en/html/tutorial/patricia_trie.html +21 -19
 - data/vendor/local/share/doc/groonga/en/html/tutorial/query_expansion.html +23 -21
 - data/vendor/local/share/doc/groonga/en/html/tutorial/search.html +37 -35
 - data/vendor/local/share/doc/groonga/ja/html/.buildinfo +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/centos.txt +3 -3
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/debian.txt +4 -4
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/fedora.txt +3 -3
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/mac_os_x.txt +5 -5
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/others.txt +3 -3
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/solaris.txt +3 -3
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/ubuntu.txt +4 -4
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/windows.txt +9 -9
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news.txt +16 -570
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/2.x.txt +5 -4
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/3.x.txt +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/4.x.txt +686 -0
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference.txt +0 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/api/grn_ctx.txt +3 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/column.txt +12 -4
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/columns/index.txt +19 -0
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/columns/pseudo.txt +2 -2
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/columns/scalar.txt +19 -0
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/commands/select.txt +734 -29
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/functions/html_untag.txt +2 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/grn_expr/query_syntax.txt +8 -7
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/grn_expr/script_syntax.txt +50 -0
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/suggest/completion.txt +25 -23
 - data/vendor/local/share/doc/groonga/ja/html/_sources/server/http.txt +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/_static/basic.css +68 -6
 - data/vendor/local/share/doc/groonga/ja/html/_static/doctools.js +26 -1
 - data/vendor/local/share/doc/groonga/ja/html/_static/down-pressed.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/down.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/file.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/jquery-1.11.1.js +10308 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/jquery.js +4 -2
 - data/vendor/local/share/doc/groonga/ja/html/_static/minus.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/plus.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/searchtools.js +2 -2
 - data/vendor/local/share/doc/groonga/ja/html/_static/underscore-1.3.1.js +999 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/up-pressed.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/up.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/websupport.js +15 -15
 - data/vendor/local/share/doc/groonga/ja/html/characteristic.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/client.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/community.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/com.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/cooperation.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/query.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/release.html +23 -21
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/repository.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/test.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution/documentation.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/c-api.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/i18n.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/introduction.html +27 -25
 - data/vendor/local/share/doc/groonga/ja/html/contribution/report.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/development.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/development/travis-ci.html +23 -21
 - data/vendor/local/share/doc/groonga/ja/html/genindex.html +17 -17
 - data/vendor/local/share/doc/groonga/ja/html/index.html +88 -80
 - data/vendor/local/share/doc/groonga/ja/html/install.html +36 -34
 - data/vendor/local/share/doc/groonga/ja/html/install/centos.html +40 -38
 - data/vendor/local/share/doc/groonga/ja/html/install/debian.html +30 -29
 - data/vendor/local/share/doc/groonga/ja/html/install/fedora.html +31 -29
 - data/vendor/local/share/doc/groonga/ja/html/install/mac_os_x.html +31 -29
 - data/vendor/local/share/doc/groonga/ja/html/install/others.html +81 -79
 - data/vendor/local/share/doc/groonga/ja/html/install/solaris.html +24 -22
 - data/vendor/local/share/doc/groonga/ja/html/install/ubuntu.html +31 -30
 - data/vendor/local/share/doc/groonga/ja/html/install/windows.html +32 -30
 - data/vendor/local/share/doc/groonga/ja/html/limitations.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/news.html +85 -677
 - data/vendor/local/share/doc/groonga/ja/html/news/0.x.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/news/1.0.x.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/news/1.1.x.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/news/1.2.x.html +36 -34
 - data/vendor/local/share/doc/groonga/ja/html/news/1.3.x.html +30 -28
 - data/vendor/local/share/doc/groonga/ja/html/news/2.x.html +94 -92
 - data/vendor/local/share/doc/groonga/ja/html/news/3.x.html +62 -60
 - data/vendor/local/share/doc/groonga/ja/html/news/4.x.html +911 -0
 - data/vendor/local/share/doc/groonga/ja/html/news/senna.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/objects.inv +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/reference.html +85 -77
 - data/vendor/local/share/doc/groonga/ja/html/reference/api.html +40 -38
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/global_configurations.html +34 -32
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_cache.html +42 -40
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_column.html +70 -68
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_command_version.html +30 -28
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_content_type.html +27 -25
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_ctx.html +62 -60
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_db.html +42 -40
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_encoding.html +31 -29
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_expr.html +62 -60
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_geo.html +29 -27
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_hook.html +32 -30
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_ii.html +30 -28
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_index_cursor.html +29 -27
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_info.html +29 -27
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_match_escalation.html +28 -26
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_obj.html +78 -76
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_proc.html +32 -30
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_search.html +27 -25
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_table.html +63 -61
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_table_cursor.html +52 -50
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_type.html +28 -26
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_user_data.html +25 -23
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/plugin.html +43 -41
 - data/vendor/local/share/doc/groonga/ja/html/reference/cast.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/column.html +35 -33
 - data/vendor/local/share/doc/groonga/ja/html/reference/columns/index.html +153 -0
 - data/vendor/local/share/doc/groonga/ja/html/reference/columns/pseudo.html +56 -29
 - data/vendor/local/share/doc/groonga/ja/html/reference/columns/scalar.html +153 -0
 - data/vendor/local/share/doc/groonga/ja/html/reference/columns/vector.html +111 -84
 - data/vendor/local/share/doc/groonga/ja/html/reference/command.html +56 -54
 - data/vendor/local/share/doc/groonga/ja/html/reference/command/command_version.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/command/output_format.html +50 -48
 - data/vendor/local/share/doc/groonga/ja/html/reference/command/request_id.html +27 -25
 - data/vendor/local/share/doc/groonga/ja/html/reference/command/return_code.html +100 -98
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/cache_limit.html +38 -36
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/check.html +46 -44
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/clearlock.html +26 -24
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_create.html +42 -40
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_list.html +66 -64
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_remove.html +27 -25
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_rename.html +41 -39
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/define_selector.html +40 -38
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/defrag.html +27 -25
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/delete.html +35 -33
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/dump.html +25 -23
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/load.html +36 -34
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/lock_clear.html +38 -37
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_level.html +26 -24
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_put.html +27 -25
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_reopen.html +25 -23
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/normalize.html +57 -55
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/normalizer_list.html +32 -30
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/quit.html +24 -22
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/range_filter.html +24 -22
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/register.html +34 -32
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/request_cancel.html +59 -57
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/ruby_eval.html +38 -36
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/ruby_load.html +38 -36
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/select.html +2832 -427
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/shutdown.html +24 -22
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/status.html +25 -23
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/suggest.html +64 -62
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_create.html +99 -97
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_list.html +36 -34
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_remove.html +26 -24
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_tokenize.html +41 -39
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/tokenize.html +67 -65
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/tokenizer_list.html +32 -30
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/truncate.html +40 -39
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables.html +22 -20
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/grndb.html +50 -45
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/grnslap.html +24 -22
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-benchmark.html +29 -27
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-httpd.html +64 -62
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-server-http.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-suggest-create-dataset.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-suggest-httpd.html +45 -43
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-suggest-learner.html +37 -35
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga.html +58 -56
 - data/vendor/local/share/doc/groonga/ja/html/reference/function.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/between.html +43 -41
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/edit_distance.html +22 -20
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_distance.html +70 -68
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_in_circle.html +33 -31
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_in_rectangle.html +23 -21
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/highlight_full.html +44 -42
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/highlight_html.html +33 -31
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/html_untag.html +31 -29
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/in_values.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/now.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/query.html +42 -40
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/rand.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/snippet_html.html +31 -29
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/sub_filter.html +34 -32
 - data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr.html +24 -22
 - data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr/query_syntax.html +119 -117
 - data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr/script_syntax.html +341 -301
 - data/vendor/local/share/doc/groonga/ja/html/reference/indexing.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/reference/log.html +23 -21
 - data/vendor/local/share/doc/groonga/ja/html/reference/normalizers.html +46 -44
 - data/vendor/local/share/doc/groonga/ja/html/reference/operations.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/operations/geolocation_search.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/output.html +31 -29
 - data/vendor/local/share/doc/groonga/ja/html/reference/query_expanders.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/query_expanders/tsv.html +37 -35
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest/completion.html +35 -43
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest/correction.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest/introduction.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest/suggestion.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/tables.html +45 -43
 - data/vendor/local/share/doc/groonga/ja/html/reference/token_filters.html +36 -34
 - data/vendor/local/share/doc/groonga/ja/html/reference/tokenizers.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/reference/tuning.html +30 -28
 - data/vendor/local/share/doc/groonga/ja/html/reference/types.html +38 -36
 - data/vendor/local/share/doc/groonga/ja/html/search.html +12 -12
 - data/vendor/local/share/doc/groonga/ja/html/searchindex.js +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/server.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/server/gqtp.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/server/http.html +22 -20
 - data/vendor/local/share/doc/groonga/ja/html/server/http/comparison.html +28 -26
 - data/vendor/local/share/doc/groonga/ja/html/server/http/groonga-httpd.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/server/http/groonga.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/server/package.html +35 -33
 - data/vendor/local/share/doc/groonga/ja/html/spec.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/spec/gqtp.html +127 -125
 - data/vendor/local/share/doc/groonga/ja/html/spec/search.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/troubleshooting.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/troubleshooting/different_results_with_the_same_keyword.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/troubleshooting/mmap_cannot_allocate_memory.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/tutorial.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/data.html +25 -23
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/drilldown.html +33 -31
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/index.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/introduction.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/lexicon.html +20 -18
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/match_columns.html +27 -25
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/micro_blog.html +50 -48
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/network.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/patricia_trie.html +21 -19
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/query_expansion.html +23 -21
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/search.html +35 -33
 - data/vendor/local/share/man/ja/man1/groonga.1 +6711 -3135
 - data/vendor/local/share/man/man1/groonga.1 +7192 -3297
 - metadata +33 -4
 
| 
         @@ -52,7 +52,9 @@ Reference 
     | 
|
| 
       52 
52 
     | 
    
         | 
| 
       53 
53 
     | 
    
         
             
               ctxの管理するメモリを解放し、使用を終了します。
         
     | 
| 
       54 
54 
     | 
    
         | 
| 
       55 
     | 
    
         
            -
               If ``ctx`` is initialized by :c:func:`grn_ctx_open()` not 
     | 
| 
      
 55 
     | 
    
         
            +
               If ``ctx`` is initialized by :c:func:`grn_ctx_open()` not
         
     | 
| 
      
 56 
     | 
    
         
            +
               :c:func:`grn_ctx_init()`, you need to use
         
     | 
| 
      
 57 
     | 
    
         
            +
               :c:func:`grn_ctx_close()` instead of :c:func:`grn_ctx_fin()`.
         
     | 
| 
       56 
58 
     | 
    
         | 
| 
       57 
59 
     | 
    
         
             
               :param ctx: 解放するctx構造体へのポインタを指定します。
         
     | 
| 
       58 
60 
     | 
    
         
             
               :return: ``GRN_SUCCESS`` on success, not ``GRN_SUCCESS`` on error.
         
     | 
| 
         @@ -17,10 +17,18 @@ must be a table. 
     | 
|
| 
       17 
17 
     | 
    
         | 
| 
       18 
18 
     | 
    
         
             
            Here are data store columns:
         
     | 
| 
       19 
19 
     | 
    
         | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
      
 20 
     | 
    
         
            +
            .. toctree::
         
     | 
| 
      
 21 
     | 
    
         
            +
               :maxdepth: 1
         
     | 
| 
      
 22 
     | 
    
         
            +
               :glob:
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
               columns/scalar
         
     | 
| 
      
 25 
     | 
    
         
            +
               columns/vector
         
     | 
| 
      
 26 
     | 
    
         
            +
               columns/pseudo
         
     | 
| 
       23 
27 
     | 
    
         | 
| 
       24 
28 
     | 
    
         
             
            Here is an index column:
         
     | 
| 
       25 
29 
     | 
    
         | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
      
 30 
     | 
    
         
            +
            .. toctree::
         
     | 
| 
      
 31 
     | 
    
         
            +
               :maxdepth: 1
         
     | 
| 
      
 32 
     | 
    
         
            +
               :glob:
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
               columns/index
         
     | 
| 
         @@ -43,6 +43,35 @@ Syntax 
     | 
|
| 
       43 
43 
     | 
    
         
             
                     [query_flags=ALLOW_PRAGMA|ALLOW_COLUMN|ALLOW_UPDATE|ALLOW_LEADING_NOT|NONE]
         
     | 
| 
       44 
44 
     | 
    
         
             
                     [query_expander=null]
         
     | 
| 
       45 
45 
     | 
    
         
             
                     [adjuster=null]
         
     | 
| 
      
 46 
     | 
    
         
            +
                     [drilldown_calc_types=NONE]
         
     | 
| 
      
 47 
     | 
    
         
            +
                     [drilldown_calc_target=null]
         
     | 
| 
      
 48 
     | 
    
         
            +
             
     | 
| 
      
 49 
     | 
    
         
            +
            ``select`` has the following named parameters for advanced drilldown:
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
              * ``drilldown[${LABEL}].keys=null``
         
     | 
| 
      
 52 
     | 
    
         
            +
              * ``drilldown[${LABEL}].sortby=null``
         
     | 
| 
      
 53 
     | 
    
         
            +
              * ``drilldown[${LABEL}].output_columns="_key, _nsubrecs"``
         
     | 
| 
      
 54 
     | 
    
         
            +
              * ``drilldown[${LABEL}].offset=0``
         
     | 
| 
      
 55 
     | 
    
         
            +
              * ``drilldown[${LABEL}].limit=10``
         
     | 
| 
      
 56 
     | 
    
         
            +
              * ``drilldown[${LABEL}].calc_types=NONE``
         
     | 
| 
      
 57 
     | 
    
         
            +
              * ``drilldown[${LABEL}].calc_target=null``
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
            You can use one or more alphabets, digits, ``_`` and ``.`` for
         
     | 
| 
      
 60 
     | 
    
         
            +
            ``${LABEL}``. For example, ``parent.sub1`` is a valid ``${LABEL}``.
         
     | 
| 
      
 61 
     | 
    
         
            +
             
     | 
| 
      
 62 
     | 
    
         
            +
            Parameters that have the same ``${LABEL}`` are grouped.
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
            For example, the following parameters specify one drilldown:
         
     | 
| 
      
 65 
     | 
    
         
            +
             
     | 
| 
      
 66 
     | 
    
         
            +
              * ``--drilldown[label].keys column``
         
     | 
| 
      
 67 
     | 
    
         
            +
              * ``--drilldown[label].sortby -_nsubrecs``
         
     | 
| 
      
 68 
     | 
    
         
            +
             
     | 
| 
      
 69 
     | 
    
         
            +
            The following parameters specify two drilldowns:
         
     | 
| 
      
 70 
     | 
    
         
            +
             
     | 
| 
      
 71 
     | 
    
         
            +
              * ``--drilldown[label1].keys column1``
         
     | 
| 
      
 72 
     | 
    
         
            +
              * ``--drilldown[label1].sortby -_nsubrecs``
         
     | 
| 
      
 73 
     | 
    
         
            +
              * ``--drilldown[label2].keys column2``
         
     | 
| 
      
 74 
     | 
    
         
            +
              * ``--drilldown[label2].sortby _key``
         
     | 
| 
       46 
75 
     | 
    
         | 
| 
       47 
76 
     | 
    
         
             
            Usage
         
     | 
| 
       48 
77 
     | 
    
         
             
            -----
         
     | 
| 
         @@ -57,6 +86,7 @@ Here are a schema definition and sample data to show usage. 
     | 
|
| 
       57 
86 
     | 
    
         
             
            .. table_create Entries TABLE_HASH_KEY ShortText
         
     | 
| 
       58 
87 
     | 
    
         
             
            .. column_create Entries content COLUMN_SCALAR Text
         
     | 
| 
       59 
88 
     | 
    
         
             
            .. column_create Entries n_likes COLUMN_SCALAR UInt32
         
     | 
| 
      
 89 
     | 
    
         
            +
            .. column_create Entries tag COLUMN_SCALAR ShortText
         
     | 
| 
       60 
90 
     | 
    
         
             
            .. table_create Terms TABLE_PAT_KEY|KEY_NORMALIZE ShortText --default_tokenizer TokenBigram
         
     | 
| 
       61 
91 
     | 
    
         
             
            .. column_create Terms entries_key_index COLUMN_INDEX|WITH_POSITION Entries _key
         
     | 
| 
       62 
92 
     | 
    
         
             
            .. column_create Terms entries_content_index COLUMN_INDEX|WITH_POSITION Entries content
         
     | 
| 
         @@ -64,25 +94,31 @@ Here are a schema definition and sample data to show usage. 
     | 
|
| 
       64 
94 
     | 
    
         
             
            .. [
         
     | 
| 
       65 
95 
     | 
    
         
             
            .. {"_key":    "The first post!",
         
     | 
| 
       66 
96 
     | 
    
         
             
            ..  "content": "Welcome! This is my first post!",
         
     | 
| 
       67 
     | 
    
         
            -
            ..  "n_likes": 5 
     | 
| 
      
 97 
     | 
    
         
            +
            ..  "n_likes": 5,
         
     | 
| 
      
 98 
     | 
    
         
            +
            ..  "tag": "Hello"},
         
     | 
| 
       68 
99 
     | 
    
         
             
            .. {"_key":    "Groonga",
         
     | 
| 
       69 
     | 
    
         
            -
            ..  "content": "I started to use  
     | 
| 
       70 
     | 
    
         
            -
            ..  "n_likes": 10 
     | 
| 
      
 100 
     | 
    
         
            +
            ..  "content": "I started to use Groonga. It's very fast!",
         
     | 
| 
      
 101 
     | 
    
         
            +
            ..  "n_likes": 10,
         
     | 
| 
      
 102 
     | 
    
         
            +
            ..  "tag": "Groonga"},
         
     | 
| 
       71 
103 
     | 
    
         
             
            .. {"_key":    "Mroonga",
         
     | 
| 
       72 
     | 
    
         
            -
            ..  "content": "I also started to use  
     | 
| 
       73 
     | 
    
         
            -
            ..  "n_likes": 15 
     | 
| 
      
 104 
     | 
    
         
            +
            ..  "content": "I also started to use Mroonga. It's also very fast! Really fast!",
         
     | 
| 
      
 105 
     | 
    
         
            +
            ..  "n_likes": 15,
         
     | 
| 
      
 106 
     | 
    
         
            +
            ..  "tag": "Groonga"},
         
     | 
| 
       74 
107 
     | 
    
         
             
            .. {"_key":    "Good-bye Senna",
         
     | 
| 
       75 
108 
     | 
    
         
             
            ..  "content": "I migrated all Senna system!",
         
     | 
| 
       76 
     | 
    
         
            -
            ..  "n_likes": 3 
     | 
| 
      
 109 
     | 
    
         
            +
            ..  "n_likes": 3,
         
     | 
| 
      
 110 
     | 
    
         
            +
            ..  "tag": "Senna"},
         
     | 
| 
       77 
111 
     | 
    
         
             
            .. {"_key":    "Good-bye Tritonn",
         
     | 
| 
       78 
112 
     | 
    
         
             
            ..  "content": "I also migrated all Tritonn system!",
         
     | 
| 
       79 
     | 
    
         
            -
            ..  "n_likes": 3 
     | 
| 
      
 113 
     | 
    
         
            +
            ..  "n_likes": 3,
         
     | 
| 
      
 114 
     | 
    
         
            +
            ..  "tag": "Senna"}
         
     | 
| 
       80 
115 
     | 
    
         
             
            .. ]
         
     | 
| 
       81 
116 
     | 
    
         | 
| 
       82 
117 
     | 
    
         
             
            There is a table, ``Entries``, for blog entries. An entry has title,
         
     | 
| 
       83 
     | 
    
         
            -
            content  
     | 
| 
      
 118 
     | 
    
         
            +
            content, the number of likes for the entry and tag. Title is key of
         
     | 
| 
       84 
119 
     | 
    
         
             
            ``Entries``. Content is value of ``Entries.content`` column. The
         
     | 
| 
       85 
     | 
    
         
            -
            number of likes is value of ``Entries.n_likes`` column.
         
     | 
| 
      
 120 
     | 
    
         
            +
            number of likes is value of ``Entries.n_likes`` column. Tag is value
         
     | 
| 
      
 121 
     | 
    
         
            +
            of ``Entries.tag`` column.
         
     | 
| 
       86 
122 
     | 
    
         | 
| 
       87 
123 
     | 
    
         
             
            ``Entries._key`` column and ``Entries.content`` column are indexed
         
     | 
| 
       88 
124 
     | 
    
         
             
            using ``TokenBigram`` tokenizer. So both ``Entries._key`` and
         
     | 
| 
         @@ -163,8 +199,8 @@ in ``content`` column value and has ``Groonga`` as ``_key`` from 
     | 
|
| 
       163 
199 
     | 
    
         
             
            ``==`` is equality operator.
         
     | 
| 
       164 
200 
     | 
    
         | 
| 
       165 
201 
     | 
    
         
             
            ``filter`` has more operators and syntax like grouping by ``(...)``
         
     | 
| 
       166 
     | 
    
         
            -
            its  
     | 
| 
       167 
     | 
    
         
            -
            datails.
         
     | 
| 
      
 202 
     | 
    
         
            +
            its details aren't described here. See
         
     | 
| 
      
 203 
     | 
    
         
            +
            :doc:`/reference/grn_expr/script_syntax` for datails.
         
     | 
| 
       168 
204 
     | 
    
         | 
| 
       169 
205 
     | 
    
         
             
            Paging
         
     | 
| 
       170 
206 
     | 
    
         
             
            ^^^^^^
         
     | 
| 
         @@ -176,7 +212,7 @@ Here is an example to output only the 2nd record. 
     | 
|
| 
       176 
212 
     | 
    
         
             
            .. include:: ../../example/reference/commands/select/paging.log
         
     | 
| 
       177 
213 
     | 
    
         
             
            .. select Entries --offset 1 --limit 1
         
     | 
| 
       178 
214 
     | 
    
         | 
| 
       179 
     | 
    
         
            -
            ``offset`` is zero- 
     | 
| 
      
 215 
     | 
    
         
            +
            ``offset`` is zero-based. ``--offset 1`` means output range is
         
     | 
| 
       180 
216 
     | 
    
         
             
            started from the 2nd record.
         
     | 
| 
       181 
217 
     | 
    
         | 
| 
       182 
218 
     | 
    
         
             
            ``limit`` specifies the max number of output records. ``--limit 1``
         
     | 
| 
         @@ -196,6 +232,56 @@ without any contents of records. 
     | 
|
| 
       196 
232 
     | 
    
         
             
            ``--limit 0`` is also useful for retrieving only the number of matched
         
     | 
| 
       197 
233 
     | 
    
         
             
            records.
         
     | 
| 
       198 
234 
     | 
    
         | 
| 
      
 235 
     | 
    
         
            +
            Drilldown
         
     | 
| 
      
 236 
     | 
    
         
            +
            ^^^^^^^^^
         
     | 
| 
      
 237 
     | 
    
         
            +
             
     | 
| 
      
 238 
     | 
    
         
            +
            You can get additional grouped results against the search result in
         
     | 
| 
      
 239 
     | 
    
         
            +
            one ``select``. You need to use two or more ``SELECT``s in SQL but
         
     | 
| 
      
 240 
     | 
    
         
            +
            ``select`` in Groonga can do it in one ``select``.
         
     | 
| 
      
 241 
     | 
    
         
            +
             
     | 
| 
      
 242 
     | 
    
         
            +
            This feature is called as `drilldown
         
     | 
| 
      
 243 
     | 
    
         
            +
            <http://en.wikipedia.org/wiki/Drill_down>`_ in Groonga. It's also
         
     | 
| 
      
 244 
     | 
    
         
            +
            called as `faceted search
         
     | 
| 
      
 245 
     | 
    
         
            +
            <http://en.wikipedia.org/wiki/Faceted_search>`_ in other search
         
     | 
| 
      
 246 
     | 
    
         
            +
            engine.
         
     | 
| 
      
 247 
     | 
    
         
            +
             
     | 
| 
      
 248 
     | 
    
         
            +
            For example, think about the following situation.
         
     | 
| 
      
 249 
     | 
    
         
            +
             
     | 
| 
      
 250 
     | 
    
         
            +
            You search entries that has ``fast`` word:
         
     | 
| 
      
 251 
     | 
    
         
            +
             
     | 
| 
      
 252 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 253 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/usage_drilldown_only_query.log
         
     | 
| 
      
 254 
     | 
    
         
            +
            .. select Entries --filter 'content @ "fast"'
         
     | 
| 
      
 255 
     | 
    
         
            +
             
     | 
| 
      
 256 
     | 
    
         
            +
            You want to use ``tag`` for additional search condition like
         
     | 
| 
      
 257 
     | 
    
         
            +
            ``--filter 'content @ "fast" && tag == "???"``. But you don't know
         
     | 
| 
      
 258 
     | 
    
         
            +
            suitable tag until you see the result of ``content @ "fast"``.
         
     | 
| 
      
 259 
     | 
    
         
            +
             
     | 
| 
      
 260 
     | 
    
         
            +
            If you know the number of matched records of each available tag, you
         
     | 
| 
      
 261 
     | 
    
         
            +
            can choose suitable tag. You can use drilldown for the case:
         
     | 
| 
      
 262 
     | 
    
         
            +
             
     | 
| 
      
 263 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 264 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/usage_drilldown.log
         
     | 
| 
      
 265 
     | 
    
         
            +
            .. select Entries --filter 'content @ "fast"' --drilldown tag
         
     | 
| 
      
 266 
     | 
    
         
            +
             
     | 
| 
      
 267 
     | 
    
         
            +
            ``--drilldown tag`` returns a list of pair of available tag and the
         
     | 
| 
      
 268 
     | 
    
         
            +
            number of matched records. You can avoid "no hit search" case by
         
     | 
| 
      
 269 
     | 
    
         
            +
            choosing a tag from the list. You can also avoid "too many search
         
     | 
| 
      
 270 
     | 
    
         
            +
            results" case by choosing a tag that the number of matched records is
         
     | 
| 
      
 271 
     | 
    
         
            +
            few from the list.
         
     | 
| 
      
 272 
     | 
    
         
            +
             
     | 
| 
      
 273 
     | 
    
         
            +
            You can create the following UI with the drilldown results:
         
     | 
| 
      
 274 
     | 
    
         
            +
             
     | 
| 
      
 275 
     | 
    
         
            +
              * Links to narrow search results. (Users don't need to input a
         
     | 
| 
      
 276 
     | 
    
         
            +
                search query by their keyboard. They just click a link.)
         
     | 
| 
      
 277 
     | 
    
         
            +
             
     | 
| 
      
 278 
     | 
    
         
            +
            Most EC sites use the UI. See side menu at Amazon.
         
     | 
| 
      
 279 
     | 
    
         
            +
             
     | 
| 
      
 280 
     | 
    
         
            +
            Groonga supports not only counting grouped records but also finding
         
     | 
| 
      
 281 
     | 
    
         
            +
            the maximum and/or minimum value from grouped records, summing values
         
     | 
| 
      
 282 
     | 
    
         
            +
            in grouped records and so on. See
         
     | 
| 
      
 283 
     | 
    
         
            +
            :ref:`select-drilldown-related-parameters` for details.
         
     | 
| 
      
 284 
     | 
    
         
            +
             
     | 
| 
       199 
285 
     | 
    
         
             
            Parameters
         
     | 
| 
       200 
286 
     | 
    
         
             
            ----------
         
     | 
| 
       201 
287 
     | 
    
         | 
| 
         @@ -646,11 +732,10 @@ more liked entries. 
     | 
|
| 
       646 
732 
     | 
    
         
             
            The ``select`` command outputs records that ``n_likes`` column value
         
     | 
| 
       647 
733 
     | 
    
         
             
            is equal to or more than ``10`` from ``Entries`` table.
         
     | 
| 
       648 
734 
     | 
    
         | 
| 
       649 
     | 
    
         
            -
             
     | 
| 
       650 
735 
     | 
    
         
             
            Output related parameters
         
     | 
| 
       651 
736 
     | 
    
         
             
            ^^^^^^^^^^^^^^^^^^^^^^^^^
         
     | 
| 
       652 
737 
     | 
    
         | 
| 
       653 
     | 
    
         
            -
            ..  
     | 
| 
      
 738 
     | 
    
         
            +
            .. _select-output-columns:
         
     | 
| 
       654 
739 
     | 
    
         | 
| 
       655 
740 
     | 
    
         
             
            ``output_columns``
         
     | 
| 
       656 
741 
     | 
    
         
             
            """"""""""""""""""
         
     | 
| 
         @@ -682,6 +767,8 @@ column value. 
     | 
|
| 
       682 
767 
     | 
    
         
             
            The default value is ``_id, _key, *``. It means that all column
         
     | 
| 
       683 
768 
     | 
    
         
             
            values except ``_score`` are outputted.
         
     | 
| 
       684 
769 
     | 
    
         | 
| 
      
 770 
     | 
    
         
            +
            .. _select-sortby:
         
     | 
| 
      
 771 
     | 
    
         
            +
             
     | 
| 
       685 
772 
     | 
    
         
             
            ``sortby``
         
     | 
| 
       686 
773 
     | 
    
         
             
            """"""""""
         
     | 
| 
       687 
774 
     | 
    
         | 
| 
         @@ -723,11 +810,13 @@ descending order and outputs record key and hit score. 
     | 
|
| 
       723 
810 
     | 
    
         
             
            If you use ``_score`` without ``query`` nor ``filter`` parameters,
         
     | 
| 
       724 
811 
     | 
    
         
             
            it's just ignored but get a warning in log file.
         
     | 
| 
       725 
812 
     | 
    
         | 
| 
      
 813 
     | 
    
         
            +
            .. _select-offset:
         
     | 
| 
      
 814 
     | 
    
         
            +
             
     | 
| 
       726 
815 
     | 
    
         
             
            ``offset``
         
     | 
| 
       727 
816 
     | 
    
         
             
            """"""""""
         
     | 
| 
       728 
817 
     | 
    
         | 
| 
       729 
818 
     | 
    
         
             
            It specifies offset to determine output records range. Offset is
         
     | 
| 
       730 
     | 
    
         
            -
            zero- 
     | 
| 
      
 819 
     | 
    
         
            +
            zero-based. ``--offset 1`` means output range is started from the 2nd
         
     | 
| 
       731 
820 
     | 
    
         
             
            record.
         
     | 
| 
       732 
821 
     | 
    
         | 
| 
       733 
822 
     | 
    
         
             
            .. groonga-command
         
     | 
| 
         @@ -738,8 +827,9 @@ The ``select`` command outputs from the 4th record. 
     | 
|
| 
       738 
827 
     | 
    
         | 
| 
       739 
828 
     | 
    
         
             
            You can specify negative value. It means that ``the number of matched
         
     | 
| 
       740 
829 
     | 
    
         
             
            records + offset``. If you have 3 matched records and specify
         
     | 
| 
       741 
     | 
    
         
            -
            ``--offset -2``, you get records from the  
     | 
| 
       742 
     | 
    
         
            -
            to the 3rd 
     | 
| 
      
 830 
     | 
    
         
            +
            ``--offset -2``, you get records from the 2nd (``3 + -2 = 1``. ``1``
         
     | 
| 
      
 831 
     | 
    
         
            +
            means 2nd. Remember that offset is zero-based.) record to the 3rd
         
     | 
| 
      
 832 
     | 
    
         
            +
            record.
         
     | 
| 
       743 
833 
     | 
    
         | 
| 
       744 
834 
     | 
    
         
             
            .. groonga-command
         
     | 
| 
       745 
835 
     | 
    
         
             
            .. include:: ../../example/reference/commands/select/offset_negative.log
         
     | 
| 
         @@ -787,43 +877,658 @@ TODO: write in English and add example. 
     | 
|
| 
       787 
877 
     | 
    
         | 
| 
       788 
878 
     | 
    
         
             
            scorerは、検索処理が完了し、ソート処理が実行される前に呼び出されます。従って、各レコードのスコアを操作する式を指定しておけば、検索結果のソート順序をカスタマイズできるようになります。
         
     | 
| 
       789 
879 
     | 
    
         | 
| 
       790 
     | 
    
         
            -
             
     | 
| 
       791 
     | 
    
         
            -
             
     | 
| 
      
 880 
     | 
    
         
            +
            .. _select-drilldown-related-parameters:
         
     | 
| 
      
 881 
     | 
    
         
            +
             
     | 
| 
      
 882 
     | 
    
         
            +
            Drilldown related parameters
         
     | 
| 
      
 883 
     | 
    
         
            +
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
         
     | 
| 
      
 884 
     | 
    
         
            +
             
     | 
| 
      
 885 
     | 
    
         
            +
            This section describes basic drilldown related parameters. Advanced
         
     | 
| 
      
 886 
     | 
    
         
            +
            drilldown related parameters are described in another section.
         
     | 
| 
      
 887 
     | 
    
         
            +
             
     | 
| 
      
 888 
     | 
    
         
            +
            .. _select-drilldown:
         
     | 
| 
       792 
889 
     | 
    
         | 
| 
       793 
890 
     | 
    
         
             
            ``drilldown``
         
     | 
| 
       794 
891 
     | 
    
         
             
            """""""""""""
         
     | 
| 
       795 
892 
     | 
    
         | 
| 
       796 
     | 
    
         
            -
             
     | 
| 
      
 893 
     | 
    
         
            +
            It specifies keys for grouping separated by ``,``.
         
     | 
| 
      
 894 
     | 
    
         
            +
             
     | 
| 
      
 895 
     | 
    
         
            +
            Matched records by specified search conditions are grouped by each
         
     | 
| 
      
 896 
     | 
    
         
            +
            key. If you specify no search condition, all records are grouped by
         
     | 
| 
      
 897 
     | 
    
         
            +
            each key.
         
     | 
| 
      
 898 
     | 
    
         
            +
             
     | 
| 
      
 899 
     | 
    
         
            +
            Here is a simple ``drilldown`` example:
         
     | 
| 
      
 900 
     | 
    
         
            +
             
     | 
| 
      
 901 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 902 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_simple.log
         
     | 
| 
      
 903 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 904 
     | 
    
         
            +
            ..   --output_columns _key,tag \
         
     | 
| 
      
 905 
     | 
    
         
            +
            ..   --drilldown tag
         
     | 
| 
      
 906 
     | 
    
         
            +
             
     | 
| 
      
 907 
     | 
    
         
            +
            The ``select`` command outputs the following information:
         
     | 
| 
      
 908 
     | 
    
         
            +
             
     | 
| 
      
 909 
     | 
    
         
            +
              * There is one record that has "Hello" tag.
         
     | 
| 
      
 910 
     | 
    
         
            +
              * There is two records that has "Groonga" tag.
         
     | 
| 
      
 911 
     | 
    
         
            +
              * There is two records that has "Senna" tag.
         
     | 
| 
      
 912 
     | 
    
         
            +
             
     | 
| 
      
 913 
     | 
    
         
            +
            Here is a ``drilldown`` with search condition example:
         
     | 
| 
      
 914 
     | 
    
         
            +
             
     | 
| 
      
 915 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 916 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_filter.log
         
     | 
| 
      
 917 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 918 
     | 
    
         
            +
            ..   --output_columns _key,tag \
         
     | 
| 
      
 919 
     | 
    
         
            +
            ..   --filter 'n_likes >= 5' \
         
     | 
| 
      
 920 
     | 
    
         
            +
            ..   --drilldown tag
         
     | 
| 
      
 921 
     | 
    
         
            +
             
     | 
| 
      
 922 
     | 
    
         
            +
            The ``select`` command outputs the following information:
         
     | 
| 
      
 923 
     | 
    
         
            +
             
     | 
| 
      
 924 
     | 
    
         
            +
              * In records that have 5 or larger as ``n_likes`` value:
         
     | 
| 
       797 
925 
     | 
    
         | 
| 
       798 
     | 
    
         
            -
             
     | 
| 
      
 926 
     | 
    
         
            +
                * There is one record that has "Hello" tag.
         
     | 
| 
      
 927 
     | 
    
         
            +
                * There is two records that has "Groonga" tag.
         
     | 
| 
      
 928 
     | 
    
         
            +
             
     | 
| 
      
 929 
     | 
    
         
            +
            Here is a ``drilldown`` with multiple group keys example:
         
     | 
| 
      
 930 
     | 
    
         
            +
             
     | 
| 
      
 931 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 932 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_multiple.log
         
     | 
| 
      
 933 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 934 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 935 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 936 
     | 
    
         
            +
            ..   --drilldown tag,n_likes
         
     | 
| 
      
 937 
     | 
    
         
            +
             
     | 
| 
      
 938 
     | 
    
         
            +
            The ``select`` command outputs the following information:
         
     | 
| 
      
 939 
     | 
    
         
            +
             
     | 
| 
      
 940 
     | 
    
         
            +
              * About ``tag``:
         
     | 
| 
      
 941 
     | 
    
         
            +
             
     | 
| 
      
 942 
     | 
    
         
            +
                * There is one record that has "Hello" tag.
         
     | 
| 
      
 943 
     | 
    
         
            +
                * There is two records that has "Groonga" tag.
         
     | 
| 
      
 944 
     | 
    
         
            +
                * There is two records that has "Senna" tag.
         
     | 
| 
      
 945 
     | 
    
         
            +
             
     | 
| 
      
 946 
     | 
    
         
            +
              * About ``n_likes``:
         
     | 
| 
      
 947 
     | 
    
         
            +
             
     | 
| 
      
 948 
     | 
    
         
            +
                * There is one record that has "Hello" tag.
         
     | 
| 
      
 949 
     | 
    
         
            +
                * There is two records that has "Groonga" tag.
         
     | 
| 
      
 950 
     | 
    
         
            +
                * There is two records that has "Senna" tag.
         
     | 
| 
      
 951 
     | 
    
         
            +
             
     | 
| 
      
 952 
     | 
    
         
            +
            .. _select-drilldown-sortby:
         
     | 
| 
       799 
953 
     | 
    
         | 
| 
       800 
954 
     | 
    
         
             
            ``drilldown_sortby``
         
     | 
| 
       801 
955 
     | 
    
         
             
            """"""""""""""""""""
         
     | 
| 
       802 
956 
     | 
    
         | 
| 
       803 
     | 
    
         
            -
             
     | 
| 
      
 957 
     | 
    
         
            +
            It specifies sort keys for drilldown outputs separated by ``,``. Each
         
     | 
| 
      
 958 
     | 
    
         
            +
            sort key is column name.
         
     | 
| 
      
 959 
     | 
    
         
            +
             
     | 
| 
      
 960 
     | 
    
         
            +
            You can refer the number of grouped records by ``_nsubrecs``
         
     | 
| 
      
 961 
     | 
    
         
            +
            :doc:`/reference/columns/pseudo`.
         
     | 
| 
      
 962 
     | 
    
         
            +
             
     | 
| 
      
 963 
     | 
    
         
            +
            Here is a simple ``drilldown_sortby`` example:
         
     | 
| 
      
 964 
     | 
    
         
            +
             
     | 
| 
      
 965 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 966 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_sortby_simple.log
         
     | 
| 
      
 967 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 968 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 969 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 970 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 971 
     | 
    
         
            +
            ..   --drilldown_sortby '-_nsubrecs, _key'
         
     | 
| 
      
 972 
     | 
    
         
            +
             
     | 
| 
      
 973 
     | 
    
         
            +
            Drilldown result is sorted by the number of grouped records (=
         
     | 
| 
      
 974 
     | 
    
         
            +
            ``_nsubrecs`` ) in descending order. If there are grouped results that
         
     | 
| 
      
 975 
     | 
    
         
            +
            the number of records in the group are the same, these grouped results
         
     | 
| 
      
 976 
     | 
    
         
            +
            are sorted by grouped key (= ``_key`` ) in ascending order.
         
     | 
| 
      
 977 
     | 
    
         
            +
             
     | 
| 
      
 978 
     | 
    
         
            +
            The sort keys are used in all group keys specified in ``drilldown``:
         
     | 
| 
      
 979 
     | 
    
         
            +
             
     | 
| 
      
 980 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 981 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_sortby_simple.log
         
     | 
| 
      
 982 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 983 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 984 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 985 
     | 
    
         
            +
            ..   --drilldown 'tag, n_likes' \
         
     | 
| 
      
 986 
     | 
    
         
            +
            ..   --drilldown_sortby '-_nsubrecs, _key'
         
     | 
| 
      
 987 
     | 
    
         
            +
             
     | 
| 
      
 988 
     | 
    
         
            +
            The same sort keys are used in ``tag`` drilldown and ``n_likes``
         
     | 
| 
      
 989 
     | 
    
         
            +
            drilldown.
         
     | 
| 
      
 990 
     | 
    
         
            +
             
     | 
| 
      
 991 
     | 
    
         
            +
            If you want to use different sort keys for each drilldown, use
         
     | 
| 
      
 992 
     | 
    
         
            +
            :ref:`select-advanced-drilldown-related-parameters`.
         
     | 
| 
       804 
993 
     | 
    
         | 
| 
       805 
     | 
    
         
            -
            drilldown 
     | 
| 
      
 994 
     | 
    
         
            +
            .. _select-drilldown-output-columns:
         
     | 
| 
       806 
995 
     | 
    
         | 
| 
       807 
996 
     | 
    
         
             
            ``drilldown_output_columns``
         
     | 
| 
       808 
997 
     | 
    
         
             
            """"""""""""""""""""""""""""
         
     | 
| 
       809 
998 
     | 
    
         | 
| 
       810 
     | 
    
         
            -
             
     | 
| 
      
 999 
     | 
    
         
            +
            It specifies output columns for drilldown separated by ``,``.
         
     | 
| 
      
 1000 
     | 
    
         
            +
             
     | 
| 
      
 1001 
     | 
    
         
            +
            Here is a ``drilldown_output_columns`` example:
         
     | 
| 
      
 1002 
     | 
    
         
            +
             
     | 
| 
      
 1003 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1004 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_output_columns_simple.log
         
     | 
| 
      
 1005 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1006 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1007 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1008 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1009 
     | 
    
         
            +
            ..   --drilldown_output_columns _key
         
     | 
| 
      
 1010 
     | 
    
         
            +
             
     | 
| 
      
 1011 
     | 
    
         
            +
            The ``select`` command just outputs grouped key.
         
     | 
| 
      
 1012 
     | 
    
         
            +
             
     | 
| 
      
 1013 
     | 
    
         
            +
            If grouped key is a referenced type column (= column that its type is
         
     | 
| 
      
 1014 
     | 
    
         
            +
            a table), you can access column of the table referenced by the
         
     | 
| 
      
 1015 
     | 
    
         
            +
            referenced type column.
         
     | 
| 
      
 1016 
     | 
    
         
            +
             
     | 
| 
      
 1017 
     | 
    
         
            +
            Here are a schema definition and sample data to show drilldown against
         
     | 
| 
      
 1018 
     | 
    
         
            +
            referenced type column:
         
     | 
| 
      
 1019 
     | 
    
         
            +
             
     | 
| 
      
 1020 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1021 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_output_columns_referenced_type_column_definition.log
         
     | 
| 
      
 1022 
     | 
    
         
            +
            .. table_create Tags TABLE_HASH_KEY ShortText --normalizer NormalizerAuto
         
     | 
| 
      
 1023 
     | 
    
         
            +
            .. column_create Tags label COLUMN_SCALAR ShortText
         
     | 
| 
      
 1024 
     | 
    
         
            +
            .. column_create Tags priority COLUMN_SCALAR Int32
         
     | 
| 
      
 1025 
     | 
    
         
            +
            ..
         
     | 
| 
      
 1026 
     | 
    
         
            +
            .. table_create Items TABLE_HASH_KEY ShortText
         
     | 
| 
      
 1027 
     | 
    
         
            +
            .. column_create Items tag COLUMN_SCALAR Tags
         
     | 
| 
      
 1028 
     | 
    
         
            +
            ..
         
     | 
| 
      
 1029 
     | 
    
         
            +
            .. load --table Tags
         
     | 
| 
      
 1030 
     | 
    
         
            +
            .. [
         
     | 
| 
      
 1031 
     | 
    
         
            +
            .. {"_key": "groonga", label: "Groonga", priority: 10},
         
     | 
| 
      
 1032 
     | 
    
         
            +
            .. {"_key": "mroonga", label: "Mroonga", priority: 5}
         
     | 
| 
      
 1033 
     | 
    
         
            +
            .. ]
         
     | 
| 
      
 1034 
     | 
    
         
            +
            ..
         
     | 
| 
      
 1035 
     | 
    
         
            +
            .. load --table Items
         
     | 
| 
      
 1036 
     | 
    
         
            +
            .. [
         
     | 
| 
      
 1037 
     | 
    
         
            +
            .. {"_key": "A", "tag": "groonga"},
         
     | 
| 
      
 1038 
     | 
    
         
            +
            .. {"_key": "B", "tag": "groonga"},
         
     | 
| 
      
 1039 
     | 
    
         
            +
            .. {"_key": "C", "tag": "mroonga"}
         
     | 
| 
      
 1040 
     | 
    
         
            +
            .. ]
         
     | 
| 
      
 1041 
     | 
    
         
            +
             
     | 
| 
      
 1042 
     | 
    
         
            +
            ``Tags`` table is a referenced table. ``Items.tag`` is a referenced
         
     | 
| 
      
 1043 
     | 
    
         
            +
            type column.
         
     | 
| 
       811 
1044 
     | 
    
         | 
| 
       812 
     | 
    
         
            -
             
     | 
| 
      
 1045 
     | 
    
         
            +
            You can refer ``Tags.label`` by ``label`` in
         
     | 
| 
      
 1046 
     | 
    
         
            +
            ``drilldown_output_columns``:
         
     | 
| 
      
 1047 
     | 
    
         
            +
             
     | 
| 
      
 1048 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1049 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_output_columns_referenced_type_column_label.log
         
     | 
| 
      
 1050 
     | 
    
         
            +
            .. select Items \
         
     | 
| 
      
 1051 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1052 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1053 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1054 
     | 
    
         
            +
            ..   --drilldown_output_columns '_key, label'
         
     | 
| 
      
 1055 
     | 
    
         
            +
             
     | 
| 
      
 1056 
     | 
    
         
            +
            You can use ``*`` to refer all columns in referenced table (= ``Tags``):
         
     | 
| 
      
 1057 
     | 
    
         
            +
             
     | 
| 
      
 1058 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1059 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_output_columns_referenced_type_column_asterisk.log
         
     | 
| 
      
 1060 
     | 
    
         
            +
            .. select Items \
         
     | 
| 
      
 1061 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1062 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1063 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1064 
     | 
    
         
            +
            ..   --drilldown_output_columns '_key, *'
         
     | 
| 
      
 1065 
     | 
    
         
            +
             
     | 
| 
      
 1066 
     | 
    
         
            +
            ``*`` is expanded to ``label, priority``.
         
     | 
| 
      
 1067 
     | 
    
         
            +
             
     | 
| 
      
 1068 
     | 
    
         
            +
            The default value of ``drilldown_output_columns`` is ``_key,
         
     | 
| 
      
 1069 
     | 
    
         
            +
            _nsubrecs``. It means that grouped key and the number of records in
         
     | 
| 
      
 1070 
     | 
    
         
            +
            the group are output.
         
     | 
| 
      
 1071 
     | 
    
         
            +
             
     | 
| 
      
 1072 
     | 
    
         
            +
            You can use more :doc:`/reference/columns/pseudo` in
         
     | 
| 
      
 1073 
     | 
    
         
            +
            ``drilldown_output_columns`` such as ``_max``, ``_min``, ``_sum`` and
         
     | 
| 
      
 1074 
     | 
    
         
            +
            ``_avg`` when you use :ref:`select-drilldown-calc-types`. See
         
     | 
| 
      
 1075 
     | 
    
         
            +
            ``drilldown_calc_types`` document for details.
         
     | 
| 
      
 1076 
     | 
    
         
            +
             
     | 
| 
      
 1077 
     | 
    
         
            +
            .. _select-drilldown-offset:
         
     | 
| 
       813 
1078 
     | 
    
         | 
| 
       814 
1079 
     | 
    
         
             
            ``drilldown_offset``
         
     | 
| 
       815 
1080 
     | 
    
         
             
            """"""""""""""""""""
         
     | 
| 
       816 
1081 
     | 
    
         | 
| 
       817 
     | 
    
         
            -
             
     | 
| 
      
 1082 
     | 
    
         
            +
            It specifies offset to determine range of drilldown output
         
     | 
| 
      
 1083 
     | 
    
         
            +
            records. Offset is zero-based. ``--drilldown_offset 1`` means output
         
     | 
| 
      
 1084 
     | 
    
         
            +
            range is started from the 2nd record.
         
     | 
| 
       818 
1085 
     | 
    
         | 
| 
       819 
     | 
    
         
            -
             
     | 
| 
      
 1086 
     | 
    
         
            +
            Here is a ``drilldown_offset`` example:
         
     | 
| 
      
 1087 
     | 
    
         
            +
             
     | 
| 
      
 1088 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1089 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_offset_simple.log
         
     | 
| 
      
 1090 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1091 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1092 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1093 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1094 
     | 
    
         
            +
            ..   --drilldown_sortby _key \
         
     | 
| 
      
 1095 
     | 
    
         
            +
            ..   --drilldown_offset 1
         
     | 
| 
      
 1096 
     | 
    
         
            +
             
     | 
| 
      
 1097 
     | 
    
         
            +
            The ``select`` command outputs from the 2nd record.
         
     | 
| 
      
 1098 
     | 
    
         
            +
             
     | 
| 
      
 1099 
     | 
    
         
            +
            You can specify negative value. It means that ``the number of grouped
         
     | 
| 
      
 1100 
     | 
    
         
            +
            results + offset``. If you have 3 grouped results and specify
         
     | 
| 
      
 1101 
     | 
    
         
            +
            ``--drilldown_offset -2``, you get grouped results from the 2st
         
     | 
| 
      
 1102 
     | 
    
         
            +
            (``3 + -2 = 1``. ``1`` means 2nd. Remember that offset is zero-based.)
         
     | 
| 
      
 1103 
     | 
    
         
            +
            grouped result to the 3rd grouped result.
         
     | 
| 
      
 1104 
     | 
    
         
            +
             
     | 
| 
      
 1105 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1106 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_offset_negative.log
         
     | 
| 
      
 1107 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1108 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1109 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1110 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1111 
     | 
    
         
            +
            ..   --drilldown_sortby _key \
         
     | 
| 
      
 1112 
     | 
    
         
            +
            ..   --drilldown_offset -2
         
     | 
| 
      
 1113 
     | 
    
         
            +
             
     | 
| 
      
 1114 
     | 
    
         
            +
            The ``select`` command outputs from the 2nd grouped result because the
         
     | 
| 
      
 1115 
     | 
    
         
            +
            total number of grouped results is ``3``.
         
     | 
| 
      
 1116 
     | 
    
         
            +
             
     | 
| 
      
 1117 
     | 
    
         
            +
            The default value of ``drilldown_offset`` is ``0``.
         
     | 
| 
      
 1118 
     | 
    
         
            +
             
     | 
| 
      
 1119 
     | 
    
         
            +
            .. _select-drilldown-limit:
         
     | 
| 
       820 
1120 
     | 
    
         | 
| 
       821 
1121 
     | 
    
         
             
            ``drilldown_limit``
         
     | 
| 
       822 
1122 
     | 
    
         
             
            """""""""""""""""""
         
     | 
| 
       823 
1123 
     | 
    
         | 
| 
       824 
     | 
    
         
            -
             
     | 
| 
      
 1124 
     | 
    
         
            +
            It specifies the max number of groups in a drilldown. If the number of
         
     | 
| 
      
 1125 
     | 
    
         
            +
            groups is less than ``drilldown_limit``, all groups are outputted.
         
     | 
| 
      
 1126 
     | 
    
         
            +
             
     | 
| 
      
 1127 
     | 
    
         
            +
            Here is a ``drilldown_limit`` example:
         
     | 
| 
      
 1128 
     | 
    
         
            +
             
     | 
| 
      
 1129 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1130 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_limit_simple.log
         
     | 
| 
      
 1131 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1132 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1133 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1134 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1135 
     | 
    
         
            +
            ..   --drilldown_sortby _key \
         
     | 
| 
      
 1136 
     | 
    
         
            +
            ..   --drilldown_offset 1 \
         
     | 
| 
      
 1137 
     | 
    
         
            +
            ..   --drilldown_limit 2
         
     | 
| 
      
 1138 
     | 
    
         
            +
             
     | 
| 
      
 1139 
     | 
    
         
            +
            The ``select`` command outputs the 2rd and the 3rd groups.
         
     | 
| 
      
 1140 
     | 
    
         
            +
             
     | 
| 
      
 1141 
     | 
    
         
            +
            You can specify negative value. It means that ``the number of groups +
         
     | 
| 
      
 1142 
     | 
    
         
            +
            drilldown_limit + 1``. For example, ``--drilldown_limit -1`` outputs
         
     | 
| 
      
 1143 
     | 
    
         
            +
            all groups. It's very useful value to show all groups.
         
     | 
| 
      
 1144 
     | 
    
         
            +
             
     | 
| 
      
 1145 
     | 
    
         
            +
            Here is a negative ``drilldown_limit`` value example.
         
     | 
| 
      
 1146 
     | 
    
         
            +
             
     | 
| 
      
 1147 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1148 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_limit_negative.log
         
     | 
| 
      
 1149 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1150 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1151 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1152 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1153 
     | 
    
         
            +
            ..   --drilldown_sortby _key \
         
     | 
| 
      
 1154 
     | 
    
         
            +
            ..   --drilldown_limit -1
         
     | 
| 
      
 1155 
     | 
    
         
            +
             
     | 
| 
      
 1156 
     | 
    
         
            +
            The ``select`` command outputs all groups.
         
     | 
| 
      
 1157 
     | 
    
         
            +
             
     | 
| 
      
 1158 
     | 
    
         
            +
            The default value of ``drilldown_limit`` is ``10``.
         
     | 
| 
      
 1159 
     | 
    
         
            +
             
     | 
| 
      
 1160 
     | 
    
         
            +
            .. _select-drilldown-calc-types:
         
     | 
| 
      
 1161 
     | 
    
         
            +
             
     | 
| 
      
 1162 
     | 
    
         
            +
            ``drilldown_calc_types``
         
     | 
| 
      
 1163 
     | 
    
         
            +
            """"""""""""""""""""""""
         
     | 
| 
      
 1164 
     | 
    
         
            +
             
     | 
| 
      
 1165 
     | 
    
         
            +
            It specifies how to calculate (aggregate) values in grouped records by
         
     | 
| 
      
 1166 
     | 
    
         
            +
            a drilldown. You can specify multiple calculation types separated by
         
     | 
| 
      
 1167 
     | 
    
         
            +
            "``,``". For example, ``MAX,MIN``.
         
     | 
| 
      
 1168 
     | 
    
         
            +
             
     | 
| 
      
 1169 
     | 
    
         
            +
            Calculation target values are read from a column of grouped
         
     | 
| 
      
 1170 
     | 
    
         
            +
            records. The column is specified by
         
     | 
| 
      
 1171 
     | 
    
         
            +
            :ref:`select-drilldown-calc-target`.
         
     | 
| 
      
 1172 
     | 
    
         
            +
             
     | 
| 
      
 1173 
     | 
    
         
            +
            You can read calculated value by :doc:`/reference/columns/pseudo` such
         
     | 
| 
      
 1174 
     | 
    
         
            +
            as ``_max`` and ``_min`` in :ref:`select-drilldown-output-columns`.
         
     | 
| 
      
 1175 
     | 
    
         
            +
             
     | 
| 
      
 1176 
     | 
    
         
            +
            You can use the following calculation types:
         
     | 
| 
      
 1177 
     | 
    
         
            +
             
     | 
| 
      
 1178 
     | 
    
         
            +
            .. list-table::
         
     | 
| 
      
 1179 
     | 
    
         
            +
               :header-rows: 1
         
     | 
| 
      
 1180 
     | 
    
         
            +
             
     | 
| 
      
 1181 
     | 
    
         
            +
               * - Type name
         
     | 
| 
      
 1182 
     | 
    
         
            +
                 - :doc:`/reference/columns/pseudo` name
         
     | 
| 
      
 1183 
     | 
    
         
            +
                 - Need :ref:`select-drilldown-calc-target`
         
     | 
| 
      
 1184 
     | 
    
         
            +
                 - Description
         
     | 
| 
      
 1185 
     | 
    
         
            +
               * - ``NONE``
         
     | 
| 
      
 1186 
     | 
    
         
            +
                 - Nothing.
         
     | 
| 
      
 1187 
     | 
    
         
            +
                 - Not needs.
         
     | 
| 
      
 1188 
     | 
    
         
            +
                 - Just ignored.
         
     | 
| 
      
 1189 
     | 
    
         
            +
               * - ``COUNT``
         
     | 
| 
      
 1190 
     | 
    
         
            +
                 - ``_nsubrecs``
         
     | 
| 
      
 1191 
     | 
    
         
            +
                 - Not needs.
         
     | 
| 
      
 1192 
     | 
    
         
            +
                 - Counting grouped records. It's always enabled. So you don't
         
     | 
| 
      
 1193 
     | 
    
         
            +
                   specify it.
         
     | 
| 
      
 1194 
     | 
    
         
            +
               * - ``MAX``
         
     | 
| 
      
 1195 
     | 
    
         
            +
                 - ``_max``
         
     | 
| 
      
 1196 
     | 
    
         
            +
                 - Needs.
         
     | 
| 
      
 1197 
     | 
    
         
            +
                 - Finding the maximum integer value from integer values in
         
     | 
| 
      
 1198 
     | 
    
         
            +
                   grouped records.
         
     | 
| 
      
 1199 
     | 
    
         
            +
               * - ``MIN``
         
     | 
| 
      
 1200 
     | 
    
         
            +
                 - ``_min``
         
     | 
| 
      
 1201 
     | 
    
         
            +
                 - Needs.
         
     | 
| 
      
 1202 
     | 
    
         
            +
                 - Finding the minimum integer value from integer values in
         
     | 
| 
      
 1203 
     | 
    
         
            +
                   grouped records.
         
     | 
| 
      
 1204 
     | 
    
         
            +
               * - ``SUM``
         
     | 
| 
      
 1205 
     | 
    
         
            +
                 - ``_sum``
         
     | 
| 
      
 1206 
     | 
    
         
            +
                 - Needs.
         
     | 
| 
      
 1207 
     | 
    
         
            +
                 - Summing integer values in grouped records.
         
     | 
| 
      
 1208 
     | 
    
         
            +
               * - ``AVG``
         
     | 
| 
      
 1209 
     | 
    
         
            +
                 - ``_avg``
         
     | 
| 
      
 1210 
     | 
    
         
            +
                 - Needs.
         
     | 
| 
      
 1211 
     | 
    
         
            +
                 - Averaging integer/float values in grouped records.
         
     | 
| 
      
 1212 
     | 
    
         
            +
             
     | 
| 
      
 1213 
     | 
    
         
            +
            Here is a ``MAX`` example:
         
     | 
| 
      
 1214 
     | 
    
         
            +
             
     | 
| 
      
 1215 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1216 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_calc_types_max.log
         
     | 
| 
      
 1217 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1218 
     | 
    
         
            +
            ..   --limit -1 \
         
     | 
| 
      
 1219 
     | 
    
         
            +
            ..   --output_column _id,n_likes \
         
     | 
| 
      
 1220 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1221 
     | 
    
         
            +
            ..   --drilldown_calc_types MAX \
         
     | 
| 
      
 1222 
     | 
    
         
            +
            ..   --drilldown_calc_target n_likes \
         
     | 
| 
      
 1223 
     | 
    
         
            +
            ..   --drilldown_output_columns _key,_max
         
     | 
| 
      
 1224 
     | 
    
         
            +
             
     | 
| 
      
 1225 
     | 
    
         
            +
            The ``select`` command groups all records by ``tag`` column value,
         
     | 
| 
      
 1226 
     | 
    
         
            +
            finding the maximum ``n_likes`` column value for each group and
         
     | 
| 
      
 1227 
     | 
    
         
            +
            outputs pairs of grouped key and the maximum ``n_likes`` column value
         
     | 
| 
      
 1228 
     | 
    
         
            +
            for the group. It uses ``_max`` :doc:`/reference/columns/pseudo` to
         
     | 
| 
      
 1229 
     | 
    
         
            +
            read the maximum ``n_likes`` column value.
         
     | 
| 
      
 1230 
     | 
    
         
            +
             
     | 
| 
      
 1231 
     | 
    
         
            +
            Here is a ``MIN`` example:
         
     | 
| 
      
 1232 
     | 
    
         
            +
             
     | 
| 
      
 1233 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1234 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_calc_types_min.log
         
     | 
| 
      
 1235 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1236 
     | 
    
         
            +
            ..   --limit -1 \
         
     | 
| 
      
 1237 
     | 
    
         
            +
            ..   --output_column _id,n_likes \
         
     | 
| 
      
 1238 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1239 
     | 
    
         
            +
            ..   --drilldown_calc_types MIN \
         
     | 
| 
      
 1240 
     | 
    
         
            +
            ..   --drilldown_calc_target n_likes \
         
     | 
| 
      
 1241 
     | 
    
         
            +
            ..   --drilldown_output_columns _key,_min
         
     | 
| 
      
 1242 
     | 
    
         
            +
             
     | 
| 
      
 1243 
     | 
    
         
            +
            The ``select`` command groups all records by ``tag`` column value,
         
     | 
| 
      
 1244 
     | 
    
         
            +
            finding the minimum ``n_likes`` column value for each group and
         
     | 
| 
      
 1245 
     | 
    
         
            +
            outputs pairs of grouped key and the minimum ``n_likes`` column value
         
     | 
| 
      
 1246 
     | 
    
         
            +
            for the group. It uses ``_min`` :doc:`/reference/columns/pseudo` to
         
     | 
| 
      
 1247 
     | 
    
         
            +
            read the minimum ``n_likes`` column value.
         
     | 
| 
      
 1248 
     | 
    
         
            +
             
     | 
| 
      
 1249 
     | 
    
         
            +
            Here is a ``SUM`` example:
         
     | 
| 
      
 1250 
     | 
    
         
            +
             
     | 
| 
      
 1251 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1252 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_calc_types_sum.log
         
     | 
| 
      
 1253 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1254 
     | 
    
         
            +
            ..   --limit -1 \
         
     | 
| 
      
 1255 
     | 
    
         
            +
            ..   --output_column _id,n_likes \
         
     | 
| 
      
 1256 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1257 
     | 
    
         
            +
            ..   --drilldown_calc_types SUM \
         
     | 
| 
      
 1258 
     | 
    
         
            +
            ..   --drilldown_calc_target n_likes \
         
     | 
| 
      
 1259 
     | 
    
         
            +
            ..   --drilldown_output_columns _key,_sum
         
     | 
| 
      
 1260 
     | 
    
         
            +
             
     | 
| 
      
 1261 
     | 
    
         
            +
            The ``select`` command groups all records by ``tag`` column value,
         
     | 
| 
      
 1262 
     | 
    
         
            +
            sums all ``n_likes`` column values for each group and outputs pairs
         
     | 
| 
      
 1263 
     | 
    
         
            +
            of grouped key and the summed ``n_likes`` column values for the
         
     | 
| 
      
 1264 
     | 
    
         
            +
            group. It uses ``_sum`` :doc:`/reference/columns/pseudo` to read the
         
     | 
| 
      
 1265 
     | 
    
         
            +
            summed ``n_likes`` column values.
         
     | 
| 
      
 1266 
     | 
    
         
            +
             
     | 
| 
      
 1267 
     | 
    
         
            +
            Here is a ``AVG`` example:
         
     | 
| 
      
 1268 
     | 
    
         
            +
             
     | 
| 
      
 1269 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1270 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_calc_types_avg.log
         
     | 
| 
      
 1271 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1272 
     | 
    
         
            +
            ..   --limit -1 \
         
     | 
| 
      
 1273 
     | 
    
         
            +
            ..   --output_column _id,n_likes \
         
     | 
| 
      
 1274 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1275 
     | 
    
         
            +
            ..   --drilldown_calc_types AVG \
         
     | 
| 
      
 1276 
     | 
    
         
            +
            ..   --drilldown_calc_target n_likes \
         
     | 
| 
      
 1277 
     | 
    
         
            +
            ..   --drilldown_output_columns _key,_avg
         
     | 
| 
      
 1278 
     | 
    
         
            +
             
     | 
| 
      
 1279 
     | 
    
         
            +
            The ``select`` command groups all records by ``tag`` column value,
         
     | 
| 
      
 1280 
     | 
    
         
            +
            averages all ``n_likes`` column values for each group and outputs
         
     | 
| 
      
 1281 
     | 
    
         
            +
            pairs of grouped key and the averaged ``n_likes`` column values for
         
     | 
| 
      
 1282 
     | 
    
         
            +
            the group. It uses ``_avg`` :doc:`/reference/columns/pseudo` to read
         
     | 
| 
      
 1283 
     | 
    
         
            +
            the averaged ``n_likes`` column values.
         
     | 
| 
      
 1284 
     | 
    
         
            +
             
     | 
| 
      
 1285 
     | 
    
         
            +
            Here is an example that uses all calculation types:
         
     | 
| 
      
 1286 
     | 
    
         
            +
             
     | 
| 
      
 1287 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1288 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_calc_types_all.log
         
     | 
| 
      
 1289 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1290 
     | 
    
         
            +
            ..   --limit -1 \
         
     | 
| 
      
 1291 
     | 
    
         
            +
            ..   --output_column _id,n_likes \
         
     | 
| 
      
 1292 
     | 
    
         
            +
            ..   --drilldown tag \
         
     | 
| 
      
 1293 
     | 
    
         
            +
            ..   --drilldown_calc_types MAX,MIN,SUM,AVG \
         
     | 
| 
      
 1294 
     | 
    
         
            +
            ..   --drilldown_calc_target n_likes \
         
     | 
| 
      
 1295 
     | 
    
         
            +
            ..   --drilldown_output_columns _key,_nsubrecs,_max,_min,_sum,_avg
         
     | 
| 
      
 1296 
     | 
    
         
            +
             
     | 
| 
      
 1297 
     | 
    
         
            +
            The ``select`` command specifies multiple calculation types separated
         
     | 
| 
      
 1298 
     | 
    
         
            +
            by "``,``" like ``MAX,MIN,SUM,AVG``. You can use ``_nsubrecs``
         
     | 
| 
      
 1299 
     | 
    
         
            +
            :doc:`/reference/columns/pseudo` in
         
     | 
| 
      
 1300 
     | 
    
         
            +
            :ref:`select-drilldown-output-columns` without specifying ``COUNT`` in
         
     | 
| 
      
 1301 
     | 
    
         
            +
            ``drilldown_calc_types``. Because ``COUNT`` is always enabled.
         
     | 
| 
      
 1302 
     | 
    
         
            +
             
     | 
| 
      
 1303 
     | 
    
         
            +
            The default value of ``drilldown_calc_types`` is ``NONE``. It means
         
     | 
| 
      
 1304 
     | 
    
         
            +
            that only ``COUNT`` is enabled. Because ``NONE`` is just ignored and
         
     | 
| 
      
 1305 
     | 
    
         
            +
            ``COUNT`` is always enabled.
         
     | 
| 
      
 1306 
     | 
    
         
            +
             
     | 
| 
      
 1307 
     | 
    
         
            +
            .. _select-drilldown-calc-target:
         
     | 
| 
      
 1308 
     | 
    
         
            +
             
     | 
| 
      
 1309 
     | 
    
         
            +
            ``drilldown_calc_target``
         
     | 
| 
      
 1310 
     | 
    
         
            +
            """""""""""""""""""""""""
         
     | 
| 
      
 1311 
     | 
    
         
            +
             
     | 
| 
      
 1312 
     | 
    
         
            +
            It specifies the target column for :ref:`select-drilldown-calc-types`.
         
     | 
| 
       825 
1313 
     | 
    
         | 
| 
       826 
     | 
    
         
            -
             
     | 
| 
      
 1314 
     | 
    
         
            +
            If you specify a calculation type that needs a target column such as
         
     | 
| 
      
 1315 
     | 
    
         
            +
            ``MAX`` in :ref:`select-drilldown-calc-types` but you omit
         
     | 
| 
      
 1316 
     | 
    
         
            +
            ``drilldown_calc_target``, the calculation result is always ``0``.
         
     | 
| 
      
 1317 
     | 
    
         
            +
             
     | 
| 
      
 1318 
     | 
    
         
            +
            You can specify only one column name like ``--drilldown_calc_target
         
     | 
| 
      
 1319 
     | 
    
         
            +
            n_likes``. You can't specify multiple column name like
         
     | 
| 
      
 1320 
     | 
    
         
            +
            ``--drilldown_calc_target _key,n_likes``.
         
     | 
| 
      
 1321 
     | 
    
         
            +
             
     | 
| 
      
 1322 
     | 
    
         
            +
            You can use referenced value from the target record by combining
         
     | 
| 
      
 1323 
     | 
    
         
            +
            "``.``" like ``--drilldown_calc_target
         
     | 
| 
      
 1324 
     | 
    
         
            +
            reference_column.nested_reference_column.value``.
         
     | 
| 
      
 1325 
     | 
    
         
            +
             
     | 
| 
      
 1326 
     | 
    
         
            +
            See :ref:`select-drilldown-calc-types` to know how to use
         
     | 
| 
      
 1327 
     | 
    
         
            +
            ``drilldown_calc_target``.
         
     | 
| 
      
 1328 
     | 
    
         
            +
             
     | 
| 
      
 1329 
     | 
    
         
            +
            The default value of ``drilldown_calc_target`` is ``null``. It means
         
     | 
| 
      
 1330 
     | 
    
         
            +
            that no calculation target column is specified.
         
     | 
| 
      
 1331 
     | 
    
         
            +
             
     | 
| 
      
 1332 
     | 
    
         
            +
            .. _select-advanced-drilldown-related-parameters:
         
     | 
| 
      
 1333 
     | 
    
         
            +
             
     | 
| 
      
 1334 
     | 
    
         
            +
            Advanced drilldown related parameters
         
     | 
| 
      
 1335 
     | 
    
         
            +
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
         
     | 
| 
      
 1336 
     | 
    
         
            +
             
     | 
| 
      
 1337 
     | 
    
         
            +
            You can get multiple drilldown results by specifying multiple group
         
     | 
| 
      
 1338 
     | 
    
         
            +
            keys by :ref:`select-drilldown`. But you need to use the same
         
     | 
| 
      
 1339 
     | 
    
         
            +
            configuration for all drilldowns. For example,
         
     | 
| 
      
 1340 
     | 
    
         
            +
            :ref:`select-drilldown-output-columns` is used by all drilldowns.
         
     | 
| 
      
 1341 
     | 
    
         
            +
             
     | 
| 
      
 1342 
     | 
    
         
            +
            You can use a configuration for each drilldown by the following
         
     | 
| 
      
 1343 
     | 
    
         
            +
            parameters:
         
     | 
| 
      
 1344 
     | 
    
         
            +
             
     | 
| 
      
 1345 
     | 
    
         
            +
              * ``drilldown[${LABEL}].keys``
         
     | 
| 
      
 1346 
     | 
    
         
            +
              * ``drilldown[${LABEL}].sortby``
         
     | 
| 
      
 1347 
     | 
    
         
            +
              * ``drilldown[${LABEL}].output_columns``
         
     | 
| 
      
 1348 
     | 
    
         
            +
              * ``drilldown[${LABEL}].offset``
         
     | 
| 
      
 1349 
     | 
    
         
            +
              * ``drilldown[${LABEL}].limit``
         
     | 
| 
      
 1350 
     | 
    
         
            +
              * ``drilldown[${LABEL}].calc_types``
         
     | 
| 
      
 1351 
     | 
    
         
            +
              * ``drilldown[${LABEL}].calc_target``
         
     | 
| 
      
 1352 
     | 
    
         
            +
             
     | 
| 
      
 1353 
     | 
    
         
            +
            ``${LABEL}`` is a variable. You can use the following characters for
         
     | 
| 
      
 1354 
     | 
    
         
            +
            ``${LABEL}``:
         
     | 
| 
      
 1355 
     | 
    
         
            +
             
     | 
| 
      
 1356 
     | 
    
         
            +
              * Alphabets
         
     | 
| 
      
 1357 
     | 
    
         
            +
              * Digits
         
     | 
| 
      
 1358 
     | 
    
         
            +
              * ``.``
         
     | 
| 
      
 1359 
     | 
    
         
            +
              * ``_``
         
     | 
| 
      
 1360 
     | 
    
         
            +
             
     | 
| 
      
 1361 
     | 
    
         
            +
            .. You can use more characters but it's better that you use only these
         
     | 
| 
      
 1362 
     | 
    
         
            +
               characters.
         
     | 
| 
      
 1363 
     | 
    
         
            +
             
     | 
| 
      
 1364 
     | 
    
         
            +
            Parameters that has the same ``${LABEL}`` value are grouped. Grouped
         
     | 
| 
      
 1365 
     | 
    
         
            +
            parameters are used for one drilldown.
         
     | 
| 
      
 1366 
     | 
    
         
            +
             
     | 
| 
      
 1367 
     | 
    
         
            +
            For example, there are 2 groups for the following parameters:
         
     | 
| 
      
 1368 
     | 
    
         
            +
             
     | 
| 
      
 1369 
     | 
    
         
            +
              * ``--drilldown[label1].keys _key``
         
     | 
| 
      
 1370 
     | 
    
         
            +
              * ``--drilldown[label1].output_columns _nsubrecs``
         
     | 
| 
      
 1371 
     | 
    
         
            +
              * ``--drilldown[label2].keys tag``
         
     | 
| 
      
 1372 
     | 
    
         
            +
              * ``--drilldown[label2].output_columns _key,_nsubrecs``
         
     | 
| 
      
 1373 
     | 
    
         
            +
             
     | 
| 
      
 1374 
     | 
    
         
            +
            ``drilldown[label1].keys`` and ``drilldown[label1].output_columns``
         
     | 
| 
      
 1375 
     | 
    
         
            +
            are grouped. ``drilldown[label2].keys`` and
         
     | 
| 
      
 1376 
     | 
    
         
            +
            ``drilldown[label2].output_columns`` are also grouped.
         
     | 
| 
      
 1377 
     | 
    
         
            +
             
     | 
| 
      
 1378 
     | 
    
         
            +
            In ``label1`` group, ``_key`` is used for group key and ``_nsubrecs``
         
     | 
| 
      
 1379 
     | 
    
         
            +
            is used for output columns.
         
     | 
| 
      
 1380 
     | 
    
         
            +
             
     | 
| 
      
 1381 
     | 
    
         
            +
            In ``label2`` group, ``tag`` is used for group key and
         
     | 
| 
      
 1382 
     | 
    
         
            +
            ``_key,_nsubrecs`` is used for output columns.
         
     | 
| 
      
 1383 
     | 
    
         
            +
             
     | 
| 
      
 1384 
     | 
    
         
            +
            See document for corresponding ``drilldown_XXX`` parameter to know how
         
     | 
| 
      
 1385 
     | 
    
         
            +
            to use it for the following parameters:
         
     | 
| 
      
 1386 
     | 
    
         
            +
             
     | 
| 
      
 1387 
     | 
    
         
            +
              * ``drilldown[${LABEL}].sortby``: :ref:`select-drilldown-sortby`
         
     | 
| 
      
 1388 
     | 
    
         
            +
              * ``drilldown[${LABEL}].offset``: :ref:`select-drilldown-offset`
         
     | 
| 
      
 1389 
     | 
    
         
            +
              * ``drilldown[${LABEL}].limit``: :ref:`select-drilldown-limit`
         
     | 
| 
      
 1390 
     | 
    
         
            +
              * ``drilldown[${LABEL}].calc_types``: :ref:`select-drilldown-calc-types`
         
     | 
| 
      
 1391 
     | 
    
         
            +
              * ``drilldown[${LABEL}].calc_target``: :ref:`select-drilldown-calc-target`
         
     | 
| 
      
 1392 
     | 
    
         
            +
             
     | 
| 
      
 1393 
     | 
    
         
            +
            The following parameters are needed more description:
         
     | 
| 
      
 1394 
     | 
    
         
            +
             
     | 
| 
      
 1395 
     | 
    
         
            +
              * ``drilldown[${LABEL}].keys``
         
     | 
| 
      
 1396 
     | 
    
         
            +
              * ``drilldown[${LABEL}].output_columns``
         
     | 
| 
      
 1397 
     | 
    
         
            +
             
     | 
| 
      
 1398 
     | 
    
         
            +
            Output format is different a bit. It's also needed more description.
         
     | 
| 
      
 1399 
     | 
    
         
            +
             
     | 
| 
      
 1400 
     | 
    
         
            +
            .. _select-drilldown-label-keys:
         
     | 
| 
      
 1401 
     | 
    
         
            +
             
     | 
| 
      
 1402 
     | 
    
         
            +
            ``drilldown[${LABEL}].keys``
         
     | 
| 
      
 1403 
     | 
    
         
            +
            """"""""""""""""""""""""""""
         
     | 
| 
      
 1404 
     | 
    
         
            +
             
     | 
| 
      
 1405 
     | 
    
         
            +
            :ref:`select-drilldown` can specify multiple keys for multiple
         
     | 
| 
      
 1406 
     | 
    
         
            +
            drilldowns. But it can't specify multiple keys for one drilldown.
         
     | 
| 
      
 1407 
     | 
    
         
            +
             
     | 
| 
      
 1408 
     | 
    
         
            +
            ``drilldown[${LABEL}].keys`` can't specify multiple keys for multiple
         
     | 
| 
      
 1409 
     | 
    
         
            +
            drilldowns. But it can specify multiple keys for one drilldown.
         
     | 
| 
      
 1410 
     | 
    
         
            +
             
     | 
| 
      
 1411 
     | 
    
         
            +
            You can specify multiple keys separated by "``,``".
         
     | 
| 
      
 1412 
     | 
    
         
            +
             
     | 
| 
      
 1413 
     | 
    
         
            +
            Here is an example to group by multiple keys, ``tag`` and ``n_likes``
         
     | 
| 
      
 1414 
     | 
    
         
            +
            column values:
         
     | 
| 
      
 1415 
     | 
    
         
            +
             
     | 
| 
      
 1416 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1417 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_label_keys_multiple.log
         
     | 
| 
      
 1418 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1419 
     | 
    
         
            +
            ..   --limit -1 \
         
     | 
| 
      
 1420 
     | 
    
         
            +
            ..   --output_column tag,n_likes \
         
     | 
| 
      
 1421 
     | 
    
         
            +
            ..   --drilldown[tag.n_likes].keys tag,n_likes \
         
     | 
| 
      
 1422 
     | 
    
         
            +
            ..   --drilldown[tag.n_likes].output_columns _value.tag,_value.n_likes,_nsubrecs
         
     | 
| 
      
 1423 
     | 
    
         
            +
             
     | 
| 
      
 1424 
     | 
    
         
            +
            ``tag.n_likes`` is used as the label for the drilldown parameters
         
     | 
| 
      
 1425 
     | 
    
         
            +
            group. You can refer grouped keys by ``_value.${KEY_NAME}`` syntax in
         
     | 
| 
      
 1426 
     | 
    
         
            +
            :ref:`select-drilldown-label-output-columns`. ``${KEY_NAME}`` is a
         
     | 
| 
      
 1427 
     | 
    
         
            +
            column name to be used by group key. ``tag`` and ``n_likes`` are
         
     | 
| 
      
 1428 
     | 
    
         
            +
            ``${KEY_NAME}`` in this case.
         
     | 
| 
      
 1429 
     | 
    
         
            +
             
     | 
| 
      
 1430 
     | 
    
         
            +
            Note that you can't use ``_value.${KEY_NAME}`` syntax when you just
         
     | 
| 
      
 1431 
     | 
    
         
            +
            specify one key as ``drilldown[${LABEL}].keys`` like ``--drilldown[tag].keys
         
     | 
| 
      
 1432 
     | 
    
         
            +
            tag``. You should use ``_key`` for the case. It's the same rule in
         
     | 
| 
      
 1433 
     | 
    
         
            +
            :ref:`select-drilldown-output-columns`.
         
     | 
| 
      
 1434 
     | 
    
         
            +
             
     | 
| 
      
 1435 
     | 
    
         
            +
            .. _select-drilldown-label-output-columns:
         
     | 
| 
      
 1436 
     | 
    
         
            +
             
     | 
| 
      
 1437 
     | 
    
         
            +
            ``drilldown[${LABEL}].output_columns``
         
     | 
| 
      
 1438 
     | 
    
         
            +
            """"""""""""""""""""""""""""""""""""""
         
     | 
| 
      
 1439 
     | 
    
         
            +
             
     | 
| 
      
 1440 
     | 
    
         
            +
            It's almost same as :ref:`select-drilldown-output-columns`. The
         
     | 
| 
      
 1441 
     | 
    
         
            +
            difference between :ref:`select-drilldown-output-columns` and
         
     | 
| 
      
 1442 
     | 
    
         
            +
            ``drilldown[${LABEL}].output_columns`` is how to refer group keys.
         
     | 
| 
      
 1443 
     | 
    
         
            +
             
     | 
| 
      
 1444 
     | 
    
         
            +
            :ref:`select-drilldown-output-columns` uses ``_key``
         
     | 
| 
      
 1445 
     | 
    
         
            +
            :doc:`/reference/columns/pseudo` to refer group
         
     | 
| 
      
 1446 
     | 
    
         
            +
            key. ``drilldown[${LABEL}].output_columns`` also uses ``_key``
         
     | 
| 
      
 1447 
     | 
    
         
            +
            :doc:`/reference/columns/pseudo` to refer group key when you specify
         
     | 
| 
      
 1448 
     | 
    
         
            +
            only one group key by :ref:`select-drilldown-label-keys`.
         
     | 
| 
      
 1449 
     | 
    
         
            +
             
     | 
| 
      
 1450 
     | 
    
         
            +
            Here is an example to refer single group key by ``_key``
         
     | 
| 
      
 1451 
     | 
    
         
            +
            :doc:`/reference/columns/pseudo`:
         
     | 
| 
      
 1452 
     | 
    
         
            +
             
     | 
| 
      
 1453 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1454 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_label_output_columns_single_group_key.log
         
     | 
| 
      
 1455 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1456 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1457 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1458 
     | 
    
         
            +
            ..   --drilldown[tag.n_likes].keys tag \
         
     | 
| 
      
 1459 
     | 
    
         
            +
            ..   --drilldown[tag.n_likes].output_columns _key
         
     | 
| 
      
 1460 
     | 
    
         
            +
             
     | 
| 
      
 1461 
     | 
    
         
            +
            But you can't refer each group key by ``_key``
         
     | 
| 
      
 1462 
     | 
    
         
            +
            :doc:`/reference/columns/pseudo` in
         
     | 
| 
      
 1463 
     | 
    
         
            +
            ``drilldown[${LABEL}].output_columns``. You need to use
         
     | 
| 
      
 1464 
     | 
    
         
            +
            ``_value.${KEY_NAME}`` syntax. ``${KEY_NAME}`` is a column name that is
         
     | 
| 
      
 1465 
     | 
    
         
            +
            used for group key in :ref:`select-drilldown-label-keys`.
         
     | 
| 
      
 1466 
     | 
    
         
            +
             
     | 
| 
      
 1467 
     | 
    
         
            +
            Here is an example to refer each group key in multiple group keys by
         
     | 
| 
      
 1468 
     | 
    
         
            +
            ``_value.${KEY_NAME}`` syntax:
         
     | 
| 
      
 1469 
     | 
    
         
            +
             
     | 
| 
      
 1470 
     | 
    
         
            +
            .. groonga-command
         
     | 
| 
      
 1471 
     | 
    
         
            +
            .. include:: ../../example/reference/commands/select/drilldown_label_output_columns_single_group_key.log
         
     | 
| 
      
 1472 
     | 
    
         
            +
            .. select Entries \
         
     | 
| 
      
 1473 
     | 
    
         
            +
            ..   --limit 0 \
         
     | 
| 
      
 1474 
     | 
    
         
            +
            ..   --output_column _id \
         
     | 
| 
      
 1475 
     | 
    
         
            +
            ..   --drilldown[tag.n_likes].keys tag,n_likes \
         
     | 
| 
      
 1476 
     | 
    
         
            +
            ..   --drilldown[tag.n_likes].output_columns _value.tag,_value.n_likes
         
     | 
| 
      
 1477 
     | 
    
         
            +
             
     | 
| 
      
 1478 
     | 
    
         
            +
            .. tip:: Why ``_value.${KEY_NAME}`` syntax?
         
     | 
| 
      
 1479 
     | 
    
         
            +
             
     | 
| 
      
 1480 
     | 
    
         
            +
               It's implementation specific information.
         
     | 
| 
      
 1481 
     | 
    
         
            +
             
     | 
| 
      
 1482 
     | 
    
         
            +
               ``_key`` is a vector value. The vector value is consists of all
         
     | 
| 
      
 1483 
     | 
    
         
            +
               group keys. You can see byte sequence of the vector value by
         
     | 
| 
      
 1484 
     | 
    
         
            +
               referring ``_key`` in ``drilldown[${LABEL}].output_columns``.
         
     | 
| 
      
 1485 
     | 
    
         
            +
             
     | 
| 
      
 1486 
     | 
    
         
            +
               There is one grouped record in ``_value`` to refer each grouped
         
     | 
| 
      
 1487 
     | 
    
         
            +
               values when you specify multiple group keys to
         
     | 
| 
      
 1488 
     | 
    
         
            +
               :ref:`select-drilldown-label-keys`. So you can refer each group key
         
     | 
| 
      
 1489 
     | 
    
         
            +
               by ``_value.${KEY_NAME}`` syntax.
         
     | 
| 
      
 1490 
     | 
    
         
            +
             
     | 
| 
      
 1491 
     | 
    
         
            +
               On the other hand, there is no grouped record in ``_value`` when
         
     | 
| 
      
 1492 
     | 
    
         
            +
               you specify only one group key to
         
     | 
| 
      
 1493 
     | 
    
         
            +
               :ref:`select-drilldown-label-keys`. So you can't refer group key by
         
     | 
| 
      
 1494 
     | 
    
         
            +
               ``_value.${KEY_NAME}`` syntax.
         
     | 
| 
      
 1495 
     | 
    
         
            +
             
     | 
| 
      
 1496 
     | 
    
         
            +
            .. _select-drilldown-label-output-format:
         
     | 
| 
      
 1497 
     | 
    
         
            +
             
     | 
| 
      
 1498 
     | 
    
         
            +
            Output format for ``drilldown[${LABEL}]`` style
         
     | 
| 
      
 1499 
     | 
    
         
            +
            """""""""""""""""""""""""""""""""""""""""""""""
         
     | 
| 
      
 1500 
     | 
    
         
            +
             
     | 
| 
      
 1501 
     | 
    
         
            +
            There is a difference in output format between :ref:`select-drilldown`
         
     | 
| 
      
 1502 
     | 
    
         
            +
            and :ref:`select-drilldown-label-keys`. :ref:`select-drilldown` uses
         
     | 
| 
      
 1503 
     | 
    
         
            +
            array to output multiple drilldown results.
         
     | 
| 
      
 1504 
     | 
    
         
            +
            :ref:`select-drilldown-label-keys` uses pairs of label and drilldown
         
     | 
| 
      
 1505 
     | 
    
         
            +
            result.
         
     | 
| 
      
 1506 
     | 
    
         
            +
             
     | 
| 
      
 1507 
     | 
    
         
            +
            :ref:`select-drilldown` uses the following output format::
         
     | 
| 
      
 1508 
     | 
    
         
            +
             
     | 
| 
      
 1509 
     | 
    
         
            +
              [
         
     | 
| 
      
 1510 
     | 
    
         
            +
                HEADER,
         
     | 
| 
      
 1511 
     | 
    
         
            +
                [
         
     | 
| 
      
 1512 
     | 
    
         
            +
                  SEARCH_RESULT,
         
     | 
| 
      
 1513 
     | 
    
         
            +
                  DRILLDOWN_RESULT1,
         
     | 
| 
      
 1514 
     | 
    
         
            +
                  DRILLDOWN_RESULT2,
         
     | 
| 
      
 1515 
     | 
    
         
            +
                  ...
         
     | 
| 
      
 1516 
     | 
    
         
            +
                ]
         
     | 
| 
      
 1517 
     | 
    
         
            +
              ]
         
     | 
| 
      
 1518 
     | 
    
         
            +
             
     | 
| 
      
 1519 
     | 
    
         
            +
            :ref:`select-drilldown-label-keys` uses the following output format::
         
     | 
| 
      
 1520 
     | 
    
         
            +
             
     | 
| 
      
 1521 
     | 
    
         
            +
              [
         
     | 
| 
      
 1522 
     | 
    
         
            +
                HEADER,
         
     | 
| 
      
 1523 
     | 
    
         
            +
                [
         
     | 
| 
      
 1524 
     | 
    
         
            +
                  SEARCH_RESULT,
         
     | 
| 
      
 1525 
     | 
    
         
            +
                  {
         
     | 
| 
      
 1526 
     | 
    
         
            +
                    "LABEL1": DRILLDOWN_RESULT1,
         
     | 
| 
      
 1527 
     | 
    
         
            +
                    "LABEL2": DRILLDOWN_RESULT2,
         
     | 
| 
      
 1528 
     | 
    
         
            +
                    ...
         
     | 
| 
      
 1529 
     | 
    
         
            +
                  }
         
     | 
| 
      
 1530 
     | 
    
         
            +
                ]
         
     | 
| 
      
 1531 
     | 
    
         
            +
              ]
         
     | 
| 
       827 
1532 
     | 
    
         | 
| 
       828 
1533 
     | 
    
         
             
            Cache related parameter
         
     | 
| 
       829 
1534 
     | 
    
         
             
            ^^^^^^^^^^^^^^^^^^^^^^^
         
     |