"city"、"admin1"、および "country" 列を含む Postgresql 9.1 テーブルがあります。「city, admin1, country」の出力形式で一意の値を選択したいと思います。
ニューヨークとミネソタ州ロチェスターに複数のエントリがあるかもしれませんが、それぞれ 1 つだけが必要です。これはエラスティック検索インデックスを設定するためのもので、JDBC River プラグインを使用しています
次の SELECT は、PGAdmin3 の SQL エディターで必要なことを行います。
SELECT city || ', ' || admin1 || ', ' || country AS city FROM table GROUP BY city, admin1, country;
しかし、次の失敗
curl -XPUT 'localhost:9200/_river/nibbel_river/_meta' -d '{
"type" : "jdbc",
"jdbc" : {
"driver" : "org.postgresql.Driver",
"url" : "jdbc:postgresql://localhost:5432/table",
"user" : "",
"password" : "",
"sql" : "SELECT city || ', ' || admin1 || ', ' || country AS city FROM everything GROUP BY city, admin1, country",
"poll" : "7d"
},
"index" : {
"index" : "city",
"type" : "everything"
}
}'
エラーで
curl: (6) Couldn't resolve host ' || admin1 || ,'
curl: (3) [globbing] unmatched close brace/bracket at pos 102
{"error":"MapperParsingException[Failed to parse [jdbc.sql]]; nested: JsonParseException[Unexpected end-of-input in VALUE_STRING\n at [Source: [B@1192b0c; line: 8, column: 565]]; ","status":400}
これの構文は何ですか?