0
ビューを作成するために2つのテーブルを完全に結合しようとしていますが、正しいmysqlクエリを見つけることができません。いくつかの値をオーバーロードすることによって2つのテーブルを結合する。ビューのMySQLフル結合問題
のは、これら3つのテーブルを見てみましょう:
会社テーブル
ID Name
---------
1 A
2 B
3 C
ツールテーブル
ID Tool Version
------------------------
1 Hammer 1
2 Saw 1
3 Screwdriver 1
4 Wrench 2
CompanySpecialToolsテーブル
ID ToolID CompanyID Tool
-------------------------------------------
1 2 1 Frame Saw
2 3 1 Phillips screwdriver
3 3 1 Slot screwdriver
基本的に、CompanySpecialToolsテーブルは、特定の会社のツールの一部を「オーバーロード」します。
私が作成しようとしているビューには、次のクエリに対して次のような結果を生成する必要があります:多くの裁判の後
Select * from myview where companyID=1 OR companyID is null
ToolID CompanyID Tool
--------------------------
1 NULL Hammer
2 1 Frame Saw
3 1 Phillips screwdriver
3 1 Slot screwdriver
4 NULL Wrench
Select * from myview where companyID=2 or companyID is null
ToolID CompanyID Tool
--------------------------
1 NULL Hammer
2 NULL Saw
3 NULL Screwdriver
4 NULL Wrench
私は、このためのビューを必要とする理由あなたが疑問に思うかもしれません... データベースは、データベースへの直接アクセスを持つことができますが、唯一のクエリONEテーブルJSON APIを使用していないiOSアプリで使用されていますWHERE、GROUP、ORDERなどのフィルタを使用して、一度に1つのビューを表示できます。 – JeremK
それは、コメントではなく、質問に入れてください。 – Barmar