こんにちは
現在PostgreSQLとPythonを用いて以下のような流れの作業をしています。
1)Pythonを用いてある条件に合うテーブルX中のデータのidを取得する。
例)
id = 1, 3, 5, 6, 9, .....
使うデータで上の結果は変動します。
2)1のデータのidをinを用いてとりだす。
例) SELECT * FROM X in (1, 3, 5, 6, 9, ...) ```ここの部分は実際にはPythonで書いています。 3)それに対して更に絞り込みを行う。。。。 といった流れです。 現在、この作業が非常に計算時間がかかるので高速化を考えています。 その際2のinを用いた検索に注目しました。 ネットや本などで勉強したところinやnot inを用いたSQL文は 検索に非常に時間がかかるので、LEFT OUTER JOINとNULLかどうかの 検索で時間を短縮できると書いていました。 しかし、ネットや本などでの例ではinの後ろ(上の例だと(1, 3, 5, 6, 9, ...)) は別のテーブルを用いている場合がほとんどです。 ```ここに言語を入力 例) SELECT * FROM X IN (SELECT ID FROM Y);
今回の私のように他のテーブルを用いない場合に、
同じようにLEFT OUTER JOINを用いたSQL文はかけますでしょうか?
LEFT OUTER JOINにこだわるつもりはありませんので
他の方法もございましたら
ご指導ご鞭撻のほどよろしくお願いします。
回答2件
あなたの回答
tips
プレビュー