[解決済み] Postgres: 配列フィールドに値が含まれているかどうかをチェックしますか?
2022-04-28 11:04:26
質問
どこかに答えがあるという意味では重複質問なのでしょうが、10分ほどググっても答えが見つからなかったので、他の人の役に立つかもしれないという理由で、編集者に閉じないよう訴えます。
Postgres 9.5を使用しています。これは私のテーブルです。
Column │ Type │ Modifiers
─────────────────────────┼───────────────────────────┼─────────────────────────────────────────────────────────────────────────
id │ integer │ not null default nextval('mytable_id_seq'::regclass)
pmid │ character varying(200) │
pub_types │ character varying(2000)[] │ not null
の中にある "Journal"を含むすべての行を見つけたいのですが、どうすればよいでしょうか。
pub_types
.
ドキュメントを見つけたり、ググったりして試した結果、こんな感じです。
select * from mytable where ("Journal") IN pub_types;
select * from mytable where "Journal" IN pub_types;
select * from mytable where pub_types=ANY("Journal");
select * from mytable where pub_types IN ("Journal");
select * from mytable where where pub_types contains "Journal";
スキャンしてみました postgresの配列のドキュメント StackOverflowの質問はすべて、より複雑な例に基づいているようです。
どのように解決するのですか?
これでうまくいくはずです。
select * from mytable where 'Journal'=ANY(pub_types);
すなわち、構文は
<value> = ANY ( <array> )
. また、postresqlの文字列リテラルはシングルクォートで記述されることに注意してください。
関連
-
PostgreSQLの自己インクリメント構文使用上の注意点
-
[解決済み] エラーが発生しました。pgsqlをrailsで動作させようとすると、Peer authentication failed for user "postgres" と表示されます。
-
[解決済み] postgres: ユーザーをスーパーユーザーにアップグレードしますか?
-
[解決済み] 'ユーザー "postgres" のパスワード認証に失敗しました'
-
[解決済み] PostgreSQL は設定/conf ファイルをどこに保存しますか?
-
[解決済み] PostgreSQL で "use database_name" コマンドを使用する。
-
[解決済み】Postgresの配列に値が存在するかどうかを確認する
-
[解決済み] PostgreSQLでカラムが存在しない場合、どのように追加しますか?
-
[解決済み] PostgresのJSON配列に文字列が含まれているかどうかをチェックする
-
[解決済み] Postgresqlで「挿入無視」と「重複キー更新」(SQLマージ)をエミュレートする方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Postgresqlのユーザーログインエラーの回数を制限するサンプルコード
-
postgresql いくつかのメソッドは、要約の重複するデータを削除する
-
Postgresqlのデータベースにおける配列の作成と変更に関する操作
-
PostgreSqlのhash_code関数の使用法
-
[解決済み] PostgreSQL コマンドラインユーティリティ: psql を終了する方法
-
[解決済み] コマンドライン引数でPostgreSQLの.sqlファイルを実行する
-
[解決済み] PostgreSQLのクエリを記録する方法は?
-
[解決済み] リレーションシップのパーミッションが拒否されました
-
[解決済み】Postgresの配列に値が存在するかどうかを確認する
-
[解決済み] Postgresデータベースのエンコーディングの取得