[解決済み] Postgresql Select rows where column = array (列 = 配列)
2022-03-06 03:09:45
質問
これは、私がやろうとしていることの要約です。
$array[0] = 1;
$array[1] = 2;
$sql = "SELECT * FROM table WHERE some_id = $array"
もちろん、構文上の問題はありますが、これは私がやりたいことで、その方法を示しているものはまだ見つかっていません。
今のところ、こんな感じの予定です。
foreach($idList as $is)
$where .= 'some_id=' . $id . ' OR';
endforeach
$sql = "SELECT * FROM table WHERE " . $where;
つまり、PostgreSQLでは検索に配列を使用するサポートがあるのでしょうか、それとも私のソリューションと同様のことをしなければならないのでしょうか?
どのように解決するのですか?
SELECT *
FROM table
WHERE some_id = ANY(ARRAY[1, 2])
または
ANSI
-compatible となります。
SELECT *
FROM table
WHERE some_id IN (1, 2)
は
ANY
の構文は、配列全体を束縛変数で渡すことができるため、好ましいとされています。
SELECT *
FROM table
WHERE some_id = ANY(?::INT[])
配列の文字列表現を渡す必要があります。
{1,2}
関連
-
[解決済み] postgresでスーパーユーザーを作成する
-
[解決済み] PostgreSQLの場合。PostgreSQLのテーブルを表示する
-
[解決済み] PostgreSQLの "DESCRIBE TABLE"
-
[解決済み] PostgreSQL コマンドラインユーティリティ: psql を終了する方法
-
[解決済み] 各GROUP BYグループの最初の行を選択しますか?
-
[解決済み] PostgreSQLのユーザーパスワードを変更する方法を教えてください。
-
[解決済み] どのバージョンのPostgreSQLを使用していますか?
-
[解決済み] PostgreSQLでデータベースのコピーを作成する
-
[解決済み】Mac OS XでPostgreSQLサーバーを起動するには?
-
[解決済み】PostgreSQLのエラーです。Fatal: ロール "username" が存在しません。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] postgres がサーバー構成の場所を知らない
-
[解決済み] postgresqlのポートの混乱 5433 or 5432?
-
[解決済み] postgresでスーパーユーザーを作成する
-
[解決済み】PostgreSQLスキーマのテーブルを一覧表示する。
-
[解決済み】最後に挿入されたIDを取得するPostgreSQL関数
-
[解決済み】psqlを使用して、データベースにインストールされている拡張機能を一覧表示するにはどうすればよいですか?
-
[解決済み】Postgresに一括挿入を行う最速の方法は何ですか?
-
[解決済み】Postgresのインストール時に入力したパスワードを忘れてしまいました。
-
[解決済み】PostGISのバージョンを取得する
-
[解決済み】psql: FATAL: ユーザー "dev" のピア認証に失敗しました。