Skip to content

Commit

Permalink
query-jsonb ja: translate
Browse files Browse the repository at this point in the history
  • Loading branch information
kou committed Jun 10, 2017
1 parent c099269 commit a5b7e6d
Show file tree
Hide file tree
Showing 4 changed files with 124 additions and 46 deletions.
122 changes: 87 additions & 35 deletions _po/ja/reference/operators/script-jsonb.po
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"PO-Revision-Date: 2017-04-29 12:39+0900\n"
"PO-Revision-Date: 2017-06-10 09:37+0900\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
Expand All @@ -25,21 +25,25 @@ msgstr "# `jsonb`型用の`@@`演算子"
msgid "## Summary"
msgstr "## 概要"

msgid ""
"This operator is deprecated since 1.2.1. Use [`` &` `` operator][script-jsonb-"
"v2] instead."
msgstr "この演算子は1.2.1から非推奨になりました。代わりに[`` &` ``演算子][script-jsonb-v2]を使ってください。"

msgid ""
"`@@` operator is a PGroonga original operator. You can use complex condition t"
"hat can't be written by [`@>` operator](jsonb-contain.html) such as range sear"
"ch."
"hat can't be written by [`@>` operator][contain-jsonb] such as range search."
msgstr ""
"`@@`演算子はPGroonga独自の演算子です。範囲検索のような[`@>`演算子](jsonb-contain.html)では書けないような複雑な条件を書"
"くことができます。"
"`@@`演算子はPGroonga独自の演算子です。[`@>`演算子][contain-jsonb]では書けない範囲検索のような複雑な条件を書くことができます"
"。"

msgid ""
"If you know [JsQuery](https://github.com/postgrespro/jsquery), you can underst"
"and like \"PGroonga provides `jsonb` type related search features that are simi"
"lar to JsQuery with different syntax\"."
"If you know [JsQuery][jsquery], you can understand like \"PGroonga provides `js"
"onb` type related search features that are similar to JsQuery with different s"
"yntax\"."
msgstr ""
"もし[JsQuery](https://github.com/postgrespro/jsquery)を知っているなら、「PGroongaはJsQueryが"
"提供しているような`jsonb`型用の検索機能を違う構文で提供している」と理解してください。"
"もし[JsQuery][jsquery]を知っているなら、「PGroongaはJsQueryが提供しているような`jsonb`型用の検索機能を違う構文で提供"
"している」と理解してください。"

msgid "## Syntax"
msgstr "## 構文"
Expand All @@ -58,16 +62,30 @@ msgstr "`jsonb_column`は`jsonb`型のカラムです。"

msgid ""
"`condition` is a `text` value used as query. It uses [Groonga's script syntax]"
"(http://groonga.org/docs/reference/grn_expr/script_syntax.html)."
"[groogna-script-syntax]."
msgstr ""
"`condition`はクエリーとして使う`text`型の値です。[Groongaのスクリプト構文](http://groonga.org/ja/docs/"
"reference/grn_expr/script_syntax.html)を使います。"
"`condition`はクエリーとして使う`text`型の値です。[Groongaのスクリプト構文][groonga-script-syntax]を使います"
"。"

msgid ""
"The operator returns `true` when `condition` matches `jsonb_column` value, `fa"
"lse` otherwise."
msgstr "この演算子は`condition`が`jsonb_column`の値にマッチしたら`true`を返し、マッチしなかったら`false`を返します。"

msgid "## Operator classes"
msgstr "## 演算子クラス"

msgid ""
"You need to specify one of the following operator classes to use this operator"
":"
msgstr "この演算子を使うには次のどれかの演算子クラスを指定する必要があります。"

msgid " * `pgroonga.jsonb_ops`: Default for `jsonb`"
msgstr " * `pgroonga.jsonb_ops`:`jsonb`型のデフォルト"

msgid " * `pgroonga.jsonb_ops_v2`: For `jsonb`"
msgstr " * `pgroonga.jsonb_ops_v2`:`jsonb`型用"

msgid "## Usage"
msgstr "## 使い方"

Expand Down Expand Up @@ -164,15 +182,14 @@ msgstr ""
"このカラムは検索条件には使いません。"

msgid ""
" * `path`: The path of the value from root. It uses [jq](https://stedolan.git"
"hub.io/jq/) compatible format. Object is `[\"${ELEMENT_NAME}\"]`, array is `[]`."
" For example, the path of `\"web\"` in `{\"tags\": [\"web\"]}` is `.[\"tags\"][]`. If "
"you know absolute path of the value, you can use this value in search conditio"
"n."
" * `path`: The path of the value from root. It uses [jq][jq] compatible forma"
"t. Object is `[\"${ELEMENT_NAME}\"]`, array is `[]`. For example, the path of `\""
"web\"` in `{\"tags\": [\"web\"]}` is `.[\"tags\"][]`. If you know absolute path of th"
"e value, you can use this value in search condition."
msgstr ""
" * `path`:値がある位置へのルートからのパスです。[jq](https://stedolan.github.io/jq/)互換のフォーマットです。"
"オブジェクトは`[\"${要素名}\"]`で配列は`[]`です。たとえば、`{\"tags\": [\"web\"]}`の中の`\"web\"`のパスは`.[\"tags\"]"
"[]`です。もし、値の絶対パスを知っているなら検索条件でこの値を使えます。"
" * `path`:値がある位置へのルートからのパスです。[jq][jq]互換のフォーマットです。オブジェクトは`[\"${要素名}\"]`で配列は`[]`で"
"。たとえば、`{\"tags\": [\"web\"]}`の中の`\"web\"`のパスは`.[\"tags\"][]`です。もし、値の絶対パスを知っているなら検索条件で"
"この値を使えます。"

msgid ""
" * `paths`: The paths of the value. It includes absolute path, sub paths, `.$"
Expand Down Expand Up @@ -280,12 +297,11 @@ msgid ""
msgstr "次は`www.example.com`という文字列値を含む`jsonb`型の値を検索する条件です。"

msgid ""
"(It uses [`jsonb_pretty()` function]({{ site.postgresql_doc_base_url.en }}/fun"
"ctions-json.html#FUNCTIONS-JSON-PROCESSING-TABLE) provided since PostgreSQL 9."
"5 for readability.)"
"(It uses [`jsonb_pretty()` function][postgresql-jsonb-pretty] provided since P"
"ostgreSQL 9.5 for readability.)"
msgstr ""
"(読みやすくするためにPostgreSQL 9.5以降で使える[`jsonb_pretty()`関数]({{ site.postgresql_doc_bas"
"e_url.ja }}/functions-json.html#functions-json-processing-table)を使っています。)"
"(読みやすくするためにPostgreSQL 9.5以降で使える[`jsonb_pretty()`関数][postgresql-jsonb-pretty]を使"
"っています。)"

msgid ""
"```sql\n"
Expand Down Expand Up @@ -364,12 +380,11 @@ msgid ""
msgstr ""

msgid ""
"You can use [Groonga's query syntax](http://groonga.org/docs/reference/grn_exp"
"r/query_syntax.html) (`a OR b` can be used) for full text search by `query(\"st"
"ring\", \"...\")` syntax:"
"You can use [Groonga's query syntax][groonga-query-syntax] (`a OR b` can be us"
"ed) for full text search by `query(\"string\", \"...\")` syntax:"
msgstr ""
"全文検索用に[Groongaのクエリー構文](http://groonga.org/ja/docs/reference/grn_expr/query_syn"
"tax.html)(`a OR b`という構文を使えます)を使うには`query(\"string\", \"...\")`という構文を使います。"
"全文検索用に[Groongaのクエリー構文][groonga-query-syntax](`a OR b`という構文を使えます)を使うには`query(\"s"
"tring\", \"...\")`という構文を使います。"

msgid ""
"```sql\n"
Expand Down Expand Up @@ -400,9 +415,46 @@ msgstr ""
msgid "## See also"
msgstr "## 参考"

msgid " * [`jsonb` support][jsonb]"
msgstr " * [`jsonb`サポート][jsonb]"

msgid " * [`@>` operator][contain-jsonb]: Search by a `jsonb` data"
msgstr " * [`@>`演算子][contain-jsonb]:`jsonb`データを使った検索"

msgid ""
" * [`` &` `` operator][script-jsonb-v2]: Advanced search by ECMAScript like q"
"uery language"
msgstr " * [`` &` ``演算子][script-jsonb-v2]:ECMAScriptのようなクエリー言語を使った高度な検索"

msgid "[jsonb]:../jsonb.html"
msgstr ""

msgid ""
"[contain-jsonb]:contain-jsonb.html\n"
"[script-jsonb-v2]:script-jsonb-v2.html\n"
"[jsquery]:https://github.com/postgrespro/jsquery"
msgstr ""

msgid "[jq]:https://stedolan.github.io/jq/"
msgstr ""

msgid ""
"[groonga-query-syntax]:http://groonga.org/docs/reference/grn_expr/query_syntax"
".html"
msgstr ""
"[groonga-query-syntax]:http://groonga.org/ja/docs/reference/grn_expr/query_syn"
"tax.html"

msgid ""
"[groonga-script-syntax]:http://groonga.org/docs/reference/grn_expr/script_synt"
"ax.html"
msgstr ""
"[groonga-script-syntax]:http://groonga.org/ja/docs/reference/grn_expr/script_s"
"yntax.html"

msgid ""
" * [`jsonb` support](../jsonb.html)\n"
" * [`@>` operator](jsonb-contain.html)"
"[postgresql-jsonb-pretty]:{{ site.postgresql_doc_base_url.en }}/functions-json"
".html#FUNCTIONS-JSON-PROCESSING-TABLE"
msgstr ""
" * [`jsonb`サポート](../jsonb.html)\n"
" * [`@>`演算子](jsonb-contain.html)"
"[postgresql-jsonb-pretty]:{{ site.postgresql_doc_base_url.ja }}/functions-json"
".html#FUNCTIONS-JSON-PROCESSING-TABLE"
1 change: 0 additions & 1 deletion ja/reference/operators/script-jsonb-v2.md
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,6 @@ SELECT jsonb_pretty(record) FROM logs WHERE record &` 'string @ "started"';

全文検索用に[Groongaのクエリー構文][groonga-query-syntax](`a OR b`という構文を使えます)を使うには`query("string", "...")`という構文を使います。


```sql
SELECT jsonb_pretty(record) FROM logs WHERE record &` 'query("string", "send OR server")';
-- jsonb_pretty
Expand Down
43 changes: 35 additions & 8 deletions ja/reference/operators/script-jsonb.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,11 @@ upper_level: ../

## 概要

`@@`演算子はPGroonga独自の演算子です。範囲検索のような[`@>`演算子](jsonb-contain.html)では書けないような複雑な条件を書くことができます
この演算子は1.2.1から非推奨になりました。代わりに[`` &` ``演算子][script-jsonb-v2]を使ってください

もし[JsQuery](https://github.com/postgrespro/jsquery)を知っているなら、「PGroongaはJsQueryが提供しているような`jsonb`型用の検索機能を違う構文で提供している」と理解してください。
`@@`演算子はPGroonga独自の演算子です。[`@>`演算子][contain-jsonb]では書けない範囲検索のような複雑な条件を書くことができます。

もし[JsQuery][jsquery]を知っているなら、「PGroongaはJsQueryが提供しているような`jsonb`型用の検索機能を違う構文で提供している」と理解してください。

## 構文

Expand All @@ -21,10 +23,18 @@ jsonb_column @@ condition

`jsonb_column``jsonb`型のカラムです。

`condition`はクエリーとして使う`text`型の値です。[Groongaのスクリプト構文](http://groonga.org/ja/docs/reference/grn_expr/script_syntax.html)を使います。
`condition`はクエリーとして使う`text`型の値です。[Groongaのスクリプト構文][groonga-script-syntax]を使います。

この演算子は`condition``jsonb_column`の値にマッチしたら`true`を返し、マッチしなかったら`false`を返します。

## 演算子クラス

この演算子を使うには次のどれかの演算子クラスを指定する必要があります。

* `pgroonga.jsonb_ops``jsonb`型のデフォルト

* `pgroonga.jsonb_ops_v2``jsonb`型用

## 使い方

例に使うサンプルスキーマとデータは次の通りです。
Expand Down Expand Up @@ -93,7 +103,7 @@ CREATE TABLE values (

* `key`:値のIDです。値が違うパスで違う内容なら`key`は違う値になります。キーのフォーマットは`'${パス}|${種類}|${値}'`です。このカラムは検索条件には使いません。

* `path`:値がある位置へのルートからのパスです。[jq](https://stedolan.github.io/jq/)互換のフォーマットです。オブジェクトは`["${要素名}"]`で配列は`[]`です。たとえば、`{"tags": ["web"]}`の中の`"web"`のパスは`.["tags"][]`です。もし、値の絶対パスを知っているなら検索条件でこの値を使えます。
* `path`:値がある位置へのルートからのパスです。[jq][jq]互換のフォーマットです。オブジェクトは`["${要素名}"]`で配列は`[]`です。たとえば、`{"tags": ["web"]}`の中の`"web"`のパスは`.["tags"][]`です。もし、値の絶対パスを知っているなら検索条件でこの値を使えます。

* `paths`: 値を示すパスです。値を示すパスは複数あります。絶対パス、サブパス、`.${要素名1}.${要素名2}`というフォーマットのパス、配列部分を省略したパスがあります。このカラムは検索条件の指定を便利にするために用意されています。検索時にはこの中のパスのどれでも使うことができます。以下はどれも`{"a": {"b": "c": ["x"]}}`の中の`"x"`を指定するパスです。

Expand Down Expand Up @@ -157,7 +167,7 @@ CREATE TABLE values (

次は`www.example.com`という文字列値を含む`jsonb`型の値を検索する条件です。

(読みやすくするためにPostgreSQL 9.5以降で使える[`jsonb_pretty()`関数]({{ site.postgresql_doc_base_url.ja }}/functions-json.html#functions-json-processing-table)を使っています。)
(読みやすくするためにPostgreSQL 9.5以降で使える[`jsonb_pretty()`関数][postgresql-jsonb-pretty]を使っています。)

```sql
SELECT jsonb_pretty(record) FROM logs WHERE record @@ 'string == "www.example.com"';
Expand Down Expand Up @@ -218,7 +228,7 @@ SELECT jsonb_pretty(record) FROM logs WHERE record @@ 'string @ "started"';
-- (1 row)
```

全文検索用に[Groongaのクエリー構文](http://groonga.org/ja/docs/reference/grn_expr/query_syntax.html)`a OR b`という構文を使えます)を使うには`query("string", "...")`という構文を使います。
全文検索用に[Groongaのクエリー構文][groonga-query-syntax]`a OR b`という構文を使えます)を使うには`query("string", "...")`という構文を使います。

```sql
SELECT jsonb_pretty(record) FROM logs WHERE record @@ 'query("string", "send OR server")';
Expand All @@ -245,5 +255,22 @@ SELECT jsonb_pretty(record) FROM logs WHERE record @@ 'query("string", "send OR

## 参考

* [`jsonb`サポート](../jsonb.html)
* [`@>`演算子](jsonb-contain.html)
* [`jsonb`サポート][jsonb]

* [`@>`演算子][contain-jsonb]`jsonb`データを使った検索

* [`` &` ``演算子][script-jsonb-v2]:ECMAScriptのようなクエリー言語を使った高度な検索

[jsonb]:../jsonb.html

[contain-jsonb]:contain-jsonb.html
[script-jsonb-v2]:script-jsonb-v2.html
[jsquery]:https://github.com/postgrespro/jsquery

[jq]:https://stedolan.github.io/jq/

[groonga-query-syntax]:http://groonga.org/ja/docs/reference/grn_expr/query_syntax.html

[groonga-script-syntax]:http://groonga.org/ja/docs/reference/grn_expr/script_syntax.html

[postgresql-jsonb-pretty]:{{ site.postgresql_doc_base_url.ja }}/functions-json.html#FUNCTIONS-JSON-PROCESSING-TABLE
4 changes: 2 additions & 2 deletions reference/operators/script-jsonb.md
Original file line number Diff line number Diff line change
Expand Up @@ -257,9 +257,9 @@ SELECT jsonb_pretty(record) FROM logs WHERE record @@ 'query("string", "send OR

* [`jsonb` support][jsonb]

* [`@>` operator][contain-jsonb]
* [`@>` operator][contain-jsonb]: Search by a `jsonb` data

* [`` &` `` operator][script-jsonb-v2]
* [`` &` `` operator][script-jsonb-v2]: Advanced search by ECMAScript like query language

[jsonb]:../jsonb.html

Expand Down

0 comments on commit a5b7e6d

Please sign in to comment.