問題タブ [full-outer-join]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - mysql の複数の列に基づいて行をグループ化する
私の問題を説明する最も簡単な方法は、おそらくテーブルと取得しようとしている結果を示すことです。最後に試行したクエリが一番下にあります (機能しません)
次のテーブルがあります(簡単にするために、一連の列を削除しました):
クライアント テーブル:
契約表:
セッション テーブル:
次のように、テーブルを結合し、すべての行を client_id と contract_id でグループ化する必要があります。
私の最近の試みは、テーブルで完全な外部結合を実行し、結果を client_id と contract_id でグループ化することでした。
さまざまなテーブルの列の数が異なるため (すべての列が必要なので、運が悪いため)、完全な外部結合の回避策は失敗し、「GROUP BY」はそれぞれの 1 行のみを返すように見えます (すべての行が必要なので、私にはうまくいきません。
この場合、パフォーマンスはまったく問題になりません。
それは私が必要とすることをするように見えます。回答を承認する前に、それを自分の生産テーブルに適応させ、見落としがないかどうかを確認します
sql - グループに完全参加
クエリでロジックの問題に直面しています。
と の 2 つのテーブルがありTable1
ます。Table2
Table1
value
合計されるId
によってグループ化されるCode
外部キーを保持Table2
そしてTable2
、
Code
Des
コードのテキスト記述
私がやろうとしているのは、 group by Table1.Id
、 full join onTable2.Code
ですが、結果のグループごとに、クエリによって生成されたグループごとに Table2 のすべての行を表示したいと考えています。
サンプルコード:
結果:
必要な結果:
cognos - 完全外部結合により、Cognos でレコードをカウントするときにデカルト積が発生する
Cognos レポート スタジオの列「id」で 2 つのテーブル A と B で完全外部結合を実行しています。両方のテーブルには、id 列の複数のレコードがあります。私の要件は、各テーブルのレコード数を数えてグラフに表示する必要があることです。しかし、レコードを数えると、レコードが乗算され、デカルト積になります。
カウントを行うと、これが得られます。
テーブル A とテーブル B の合計レコード数をグラフで表示する必要があります。これは外積になるため、グラフの値は正しい結果を示していません.2番目のレコードでこのデカルト積を回避する方法を提案できますか? これが可能かどうか提案してください。
sql - SQL Server 2008R2 完全外部結合が機能しない
以下のクエリを実行しようとしています
しかし、最初のビューからの行のみを取得することにvw_daily
なり、列mrfeeddaily
は NULL になります。完全な結合では、一致しないすべての行も返されませんか? 私は何が欠けていますか。
ビューとテーブルの間に共通のデータはありません。
sql - SQL: 2 つの階層にまたがる完全外部結合
出荷された部品と受領された部品の表があるとします。発送したものと受け取ったものを一致させ、共通の発送番号で結び付けたいです。
出荷表
レシート表
望ましい結果
したがって、完全な外部結合があり、すべての個別の出荷番号と、出荷と受入の両方のそれぞれの部品番号が表示されますが、それらが一致する場所で結合されます。部品番号が一致しなくても、コンプリケーションはまだ出荷番号に含まれています。
基本的に 2 つの結合条件があり、そのうちの 1 つは完全にオプションです。
解決策は非常に簡単だと確信していますが、ユニオンを使用しないとこれを行う方法がわかりません。
mysql - 映画データベースを使用したmysqlの完全外部結合
こんにちは、次のテーブルと列があります。
次の質問に答える必要があります。
「ジョン・トラボルタかユマ・サーマンのどちらかが出演していて、どちらも出演していない映画は?」
新しいテーブルを作成せずにこれを行う方法を理解できなかったので、2 つの新しいテーブルを作成しました。そして、交差する結果が得られない完全な外部結合を実行しようとしました。mysql では完全な外部結合を実行できないことがわかりましたが、右結合と結合した左結合を実行する必要がありました。これを試しましたが、望んでいた結果がまったく得られません。私は今しばらく立ち往生しています。誰かが私を正しい方向に向けることができますか?
これは私がこれまでに持っているものです。
sql - FULL OUTER JOIN および/または UNION を使用してテーブルを同様のフィールドと組み合わせる
多くの共通フィールドを持つ 2 つのテーブルのビューを作成しようとしています。
両方のテーブルに存在するフィールドは、新しいビューの 1 つのフィールドの下に存在する必要があります。ここでいくつかの投稿を見つけましたが、やりたいことを行うために使用することを提案したものを見失った別の投稿を見つけましたが、私はこれにまったく慣れておらず、答えは少し混乱していUNION
ました。衝突しないすべてのフィールドを選択する必要があると思います。次に、テーブルに共通するすべてのフィールドを組み合わせたステートメントから残りを選択しますがFULL OUTER JOIN
、どのように機能しますか?data
elong
UNION ALL
FULL OUTER JOIN
ビュー内の行数を各テーブルの行数の合計と同じに保つために必要だと思いますFULL OUTER JOIN
が、よくわかりません。
多分これは私の解決策ですか?CROSS JOIN
ただし、 a will が同様のフィールドでどのように機能するかはわかりません。
これらを結合する方法に関心がある方のために、私は両方のテーブルから各行を取得して、それらを新しいビューに配置しようとしています。私の問題は重複したフィールド (c2、footnote1、footnote2 など) が原因です。それらを c2、footnote1、footnote2 のままにしたいのですが、生成されたエイリアスを受け取り続けます。c2 であるすべてのものは、それがどのシートからのものであっても、c2 です。
編集:以下の回答のおかげで、これが私が今書いているものであり、私が欲しいもののようです. ただし、フィールドの数が多いため、永遠にかかります。これを行うより良い方法はありますか?より自動化された何か?
Edit2:これは、将来誰かに役立つ場合に備えて、完全なクエリがどのように見えるかです。時間がかかったので、これを行うためのより自動的な方法があることを願っています。助けてくれたすべての人に感謝します!