[解決済み] Postgres: テーブルのFROM句のエントリがありません。
2022-02-11 07:55:51
質問
Postgresの4つのテーブルに対して結合クエリを実行しようとしています。
テーブル名
-
scenarios_scenario
-
payments_invoice
-
payments_payment
-
payments_action
(これらの奇妙な名前はすべてdjangoが生成したものです -)))
関係です。
-
scenarios_scenario
[多数あり]payments_action
s -
payments_action
[1つ]payments_invoice
-
payments_action
[1つ]payments_payment
以下は、動作中のクエリです。
SELECT payments_invoice.*,
(payments_payment.to_be_paid - payments_payment.paid) as remaining, \
payments_action.identificator
FROM payments_invoice
JOIN payments_payment
ON payments_invoice.action_id = payments_payment.action_id
AND payments_payment.full_payment=2
JOIN payments_action
ON payments_invoice.action_id = payments_action.id
AND payments_action.identificator = %s
私は別のテーブルから関連するフィールドを取得したいだけで、別のクエリを次のように書きました。
SELECT
scenarios_scenario.title, payments_invoice.*, \
(payments_payment.to_be_paid - payments_payment.paid) as remaining, \
payments_action.identificator, payments_action.scenario_id
FROM payments_invoice
JOIN scenarios_scenario
ON scenarios_scenario.id = payments_action.scenario_id
JOIN payments_payment
ON payments_invoice.action_id = payments_payment.action_id
AND payments_payment.full_payment=2
JOIN payments_action
ON payments_invoice.action_id = payments_action.id
AND payments_action.identificator = 'EEE45667';
しかし、このエラーに直面しました。
ERROR: missing FROM-clause entry for table "payments_action"
LINE 2: ...IN scenarios_scenario ON scenarios_scenario.id = payments_a...
^
このような類似の質問がないか、SO全体で探してみました( テーブルのFROM句の項目がない しかし、方法は見つかりませんでした。何かお手伝いいただけると幸いです。
解決方法は?
最初の結合では、「payment_action」は既知の関係ではありません。新しいjoinが既に「定義された」リレーションのみを使用するようにjoinを並べ替えてください。
以下は、この問題を説明するためのフィドルです。
関連
-
[解決済み】使用されるSELECT文は列の数が異なる(REDUX!)
-
[解決済み】SQL Server: 無効なカラム名
-
[解決済み] ORA-04063: ビューにエラーがあります
-
[解決済み] エラー (ORA-00923: 期待された場所に FROM キーワードが見つかりませんでした)
-
[解決済み] SQLiteでどのようにピボットするか、つまり、長い形式で保存されたテーブルを広い形式で選択するか?
-
[解決済み] エラーが発生しました。pgsqlをrailsで動作させようとすると、Peer authentication failed for user "postgres" と表示されます。
-
[解決済み] 最初の行への結合方法
-
[解決済み] 別のテーブルに一致する項目がない行を選択するにはどうすればよいですか?
-
[解決済み】オラクルSQL。別のテーブルからのデータでテーブルを更新する
-
[解決済み] Postgres / PostgreSQLのテーブルとインデックスのディスクサイズはどのように見つけるのですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】''付近の構文が正しくない
-
[解決済み】2つの列を分割する方法は?
-
[解決済み】Postgresのエラー。式として使用されるサブクエリによって返される複数の行
-
[解決済み】Teradata - 計算中に数値のオーバーフローが発生しました。
-
[解決済み] 2つの列を分割するには?
-
[解決済み] pg_restoreです。[archiver] 入力ファイルはテキスト形式のダンプであるように見えます。psql を使用してください。
-
[解決済み] ORA-00920: 無効な関係演算子
-
[解決済み] リンクされたサーバーの NULL に対して OLE DB プロバイダー Microsoft.Jet.OLEDB.4.0 のインスタンスを作成できません。
-
[解決済み] ora-06553 pls-306 'ogc_x' の呼び出しで引数の数または種類が誤っている。
-
[解決済み] "このSqlTransactionは完了しました。もう使用できません。"...設定エラー?