{"action":"created","issue":{"url":"https://api.github.com/repos/groonga/groonga/issues/402","labels_url":"https://api.github.com/repos/groonga/groonga/issues/402/labels{/name}","comments_url":"https://api.github.com/repos/groonga/groonga/issues/402/comments","events_url":"https://api.github.com/repos/groonga/groonga/issues/402/events","html_url":"https://github.com/groonga/groonga/issues/402","id":106670329,"number":402,"title":"grn_ts: '*' in the output_columns option","user":{"login":"s-yata","id":778712,"avatar_url":"https://avatars.githubusercontent.com/u/778712?v=3","gravatar_id":"","url":"https://api.github.com/users/s-yata","html_url":"https://github.com/s-yata","followers_url":"https://api.github.com/users/s-yata/followers","following_url":"https://api.github.com/users/s-yata/following{/other_user}","gists_url":"https://api.github.com/users/s-yata/gists{/gist_id}","starred_url":"https://api.github.com/users/s-yata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/s-yata/subscriptions","organizations_url":"https://api.github.com/users/s-yata/orgs","repos_url":"https://api.github.com/users/s-yata/repos","events_url":"https://api.github.com/users/s-yata/events{/privacy}","received_events_url":"https://api.github.com/users/s-yata/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/groonga/groonga/labels/TS","name":"TS","color":"d4c5f9"}],"state":"open","locked":false,"assignee":{"login":"s-yata","id":778712,"avatar_url":"https://avatars.githubusercontent.com/u/778712?v=3","gravatar_id":"","url":"https://api.github.com/users/s-yata","html_url":"https://github.com/s-yata","followers_url":"https://api.github.com/users/s-yata/followers","following_url":"https://api.github.com/users/s-yata/following{/other_user}","gists_url":"https://api.github.com/users/s-yata/gists{/gist_id}","starred_url":"https://api.github.com/users/s-yata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/s-yata/subscriptions","organizations_url":"https://api.github.com/users/s-yata/orgs","repos_url":"https://api.github.com/users/s-yata/repos","events_url":"https://api.github.com/users/s-yata/events{/privacy}","received_events_url":"https://api.github.com/users/s-yata/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-09-15T23:48:26Z","updated_at":"2015-09-16T00:26:36Z","closed_at":null,"body":"#### Description\r\n\r\nGroonga handles a special symbol `*` in `--output_columns` as a wildcard.\r\nFor example, `--output_columns '_id, _key, *'` means `_id`, `_key` and other columns.\r\n\r\ngrn_ts supports expressions in `--output_columns`, such as `--output_columns 'Value/10'`.\r\nIn an expression, `*` works as an multiplication operator.\r\nThus, `*` has two roles, a wildcard and a multiplication operator.\r\nThe \r\n\r\n- [ ] Check how `*` works in Groonga.\r\n- [ ] Consider how to distinguish the role of `*`.\r\n- [ ] Implement the solution.\r\n"},"comment":{"url":"https://api.github.com/repos/groonga/groonga/issues/comments/140586866","html_url":"https://github.com/groonga/groonga/issues/402#issuecomment-140586866","issue_url":"https://api.github.com/repos/groonga/groonga/issues/402","id":140586866,"user":{"login":"s-yata","id":778712,"avatar_url":"https://avatars.githubusercontent.com/u/778712?v=3","gravatar_id":"","url":"https://api.github.com/users/s-yata","html_url":"https://github.com/s-yata","followers_url":"https://api.github.com/users/s-yata/followers","following_url":"https://api.github.com/users/s-yata/following{/other_user}","gists_url":"https://api.github.com/users/s-yata/gists{/gist_id}","starred_url":"https://api.github.com/users/s-yata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/s-yata/subscriptions","organizations_url":"https://api.github.com/users/s-yata/orgs","repos_url":"https://api.github.com/users/s-yata/repos","events_url":"https://api.github.com/users/s-yata/events{/privacy}","received_events_url":"https://api.github.com/users/s-yata/received_events","type":"User","site_admin":false},"created_at":"2015-09-16T00:26:36Z","updated_at":"2015-09-16T00:26:36Z","body":"#### How `*` works in Groonga.\r\n\r\nI've tested `*` in `--output_columns` as follows:\r\n\r\n```\r\n> select Table --limit 0 --output_columns '*'\r\n[[0,1442362552.5122,0.00146698951721191],[[[1000000],[[\"BoolCol\",\"Bool\"],[\"BoolVectorCol\",\"Bool\"],[\"FloatCol\",\"Float\"],[\"FloatVectorCol\",\"Float\"],[\"Int16Col\",\"Int16\"],[\"Int16VectorCol\",\"Int16\"],[\"Int32Col\",\"Int32\"],[\"Int32VectorCol\",\"Int32\"],[\"Int64Col\",\"Int64\"],[\"Int64VectorCol\",\"Int64\"],[\"Int8Col\",\"Int8\"],[\"Int8VectorCol\",\"Int8\"],[\"LongTextCol\",\"LongText\"],[\"LongTextVectorCol\",\"LongText\"],[\"ShortTextCol\",\"ShortText\"],[\"ShortTextVectorCol\",\"ShortText\"],[\"TextCol\",\"Text\"],[\"TextVectorCol\",\"Text\"],[\"TimeCol\",\"Time\"],[\"TimeVectorCol\",\"Time\"],[\"TokyoGeoPointCol\",\"TokyoGeoPoint\"],[\"TokyoGeoPointVectorCol\",\"TokyoGeoPoint\"],[\"UInt16Col\",\"UInt16\"],[\"UInt16VectorCol\",\"UInt16\"],[\"UInt32Col\",\"UInt32\"],[\"UInt32VectorCol\",\"UInt32\"],[\"UInt64Col\",\"UInt64\"],[\"UInt64VectorCol\",\"UInt64\"],[\"UInt8Col\",\"UInt8\"],[\"UInt8VectorCol\",\"UInt8\"],[\"WGS84GeoPointCol\",\"WGS84GeoPoint\"],[\"WGS84GeoPointVectorCol\",\"WGS84GeoPoint\"]]]]]\r\n> select Table --limit 0 --output_columns 'Bool*'\r\n[[0,1442362558.84505,0.000154972076416016],[[[1000000],[[\"BoolCol\",\"Bool\"],[\"BoolVectorCol\",\"Bool\"]]]]]\r\n> select Table --limit 0 --output_columns '*Col'\r\n[[0,1442362569.68849,0.000180959701538086],[[[1000000],[]]]]\r\n> select Table --limit 0 --output_columns 'Bool*'\r\n[[0,1442362584.34441,0.000107049942016602],[[[1000000],[]]]]\r\n```\r\n\r\n- `*`\r\n - All columns.\r\n- `Bool*`\r\n - Columns with a prefix `Bool`.\r\n- `*Col`\r\n - Invalid format.\r\n\r\nIn documentation, only the first case (`*` as all columns) is written.\r\n\r\n- 7.3.41. select — Groonga v5.0.7 documentation\r\n - http://groonga.org/docs/reference/commands/select.html#output-columns"}}