私がこのようなテーブルを持っている場合:
TABLEA
:
id| object | type
1 | greg | person
2 | mary | person
3 | jared | person
4 | kelly | person
5 | melissa | person
6 | william | person
7 | skiing | hobby
8 | biking | hobby
TABLEB
:
id | husband | wife
1 | greg | mary
2 | jared | kelly
3 | william | kelly
TABLEC
:
id | female | hobby
1 | mary | skiing
2 | kelly | biking
次の結果テーブルを取得する方法はありますか?
TABLED
:
id | a | b | link
1 | 1 | 2 | related
2 | 3 | 4 | related
3 | 6 | 4 | related
4 | 1 | 4 | related
5 | 2 | 7 | likes
6 | 4 | 8 | likes
MySQLクエリ(/ ies)のみを使用していますか?
- ロジックは基本的に、テーブルBとテーブルBのすべての行から反復を開始します。
- 3番目の列は
related
、選択されているテーブルがTableB
であるlikes
場合であり、処理されているテーブルがTABLEBである場合です。
サンプルロジックは次のようになります。
(夫)gregと妻(mary)の最初の行を見るとTABLEB
、TABLEAから検索して、gregが行1(id 1)にあり、maryが行2(id 2)にあることを確認し、最初の行は1です| 2.2。
TABLEBのすべての行、次にTABLECのすべての行をプログラムで反復して目的のTABLEDを生成することなく、結合を実行できるクエリや、これを実行できるクエリはありますか?