2016-09-05 3 views
0

postgresqlにデータベーステーブルがあり、フィールドの一部にリストが含まれています。WHERE句を持つ方法は、postgresqlのリスト内の項目をチェックしますか?

selectクエリの結果の例を次に示します。

(2, u'osgb1000001786024039', 10053, 1, u'2001-11-07', [u'Land', u'Buildings'], ...) 

6番目のフィールド(テーマと呼ばれます)には、1つのアイテムのリストが含まれています。

私の質問は、そのリスト内の項目と照合するWHERE句をどのように書きますか?

私が試した:

SELECT * FROM os_mm.topographicarea 
WHERE 'Buildings' IN theme 

与える:明らかにテーマの '土地'

: "テーマ" LINE 2またはその近く

構文エラーをそれはうまくいかないので、何のコマンドや構文がありますか?

+0

テーマの種類は何ですか?それは 'text []'ですか? – redneb

+0

それは '_varchar'です –

答えて

1

この

SELECT * FROM os_mm.topographicarea 
WHERE 'Buildings' = ANY (theme) 

を試してみてはpostgresql documentationからも参照してください。

+0

パーフェクト!ありがとう。 –

関連する問題