2016-07-22 10 views
0

にJSONからn番目の値を返すために、私はpostgresのテーブルの列にjavascriptのリストを選択して解析しようとしています、それは鍵を持っていない:SQL:どのようにPostgreSQLの

{coastal,transitional,contemporary,romantic,traditional, 
industrial,modern,contemporary_eclectic,regency,mediterranean} 

何SQLコマンドがn番目の値のget?

私はあなたがこのようなキーで値を取得することができます知っている:

SELECT {column_name}->>{key value} 
FROM {table_name} 

しかし、私は実際には、リスト値の順で値を引きたいです。私が見つけることができない構文がいくつかありますか?または私は別のデータ型にこの配列を変換する必要がありますか?

答えて

2

同じ実際の配列のために働く:N要素の整数位置にある

{column_name}->>N 

参考文献:

+0

私はうまくいきません、私はそれを働かせることができませんでした。私はちょうどかかわらず、「っぽい」考え出し:それはJSのための一般的な構文ですが、ちょうど0からカウントを開始しません: 例:{COLUMN_NAME} [1]リスト –

+0

の最初の値が、それは間違いなく0-さ@TaylorNelsonですベースインデックス。 – zerkms

+0

AH、私はあなたの方法があまりにも –

0

は私が間違っている質問を判明 - 私はPostgresの配列ではなく、JSONを持っている:

私は苦しんでいたposgresは、配列のカウントを開始するので1位のではなく、0 - DOH!

{column_name}[1] //this is the first value in the array 
+1

だから、あなたはJSONが、porstgresql配列を持っていないのですか?私はそれが私達が私達のスキーマ内に豊富に持っているJSON配列、と思ったので – zerkms

+0

正しい、あなたのソリューションは私の質問のために素晴らしいですが、私は間違った質問をしました。ありがとう! –