1

私がやりたいこと(ヘルプについては下の画像を参照):

1) 2 つのリストから一意のキーを持つリストを作成する

2) その新しいリストを使用して、黒い領域から赤いサブ正方形を選択します (赤い正方形のクラスターを独自の area_key を持つ領域と考えてください)。

3) 2 つのテーブル (緑とオレンジ) のデータをサブスクエアに結合します。これには、明確にするために 3 つの属性 (area_key、id_1、id_2) が必要です。

4) 結果: 赤い四角、追加データを含むサブ四角 (存在する場合) がすべて 1 つのセットに含まれる

注: エリア キーは biglist にはありません。情報を取得するには、biglist -(sar_id)- subareas -(area_id)- Areas を接続する必要があります

これまでの私の試み..

この部分は機能します:

SELECT bl.item_id, bl.item_geometry, bl.id_1, bl.id_2, ar.area_key, ar.name
FROM biglist bl, subareas sar, areas ar
WHERE area_key IN 
(SELECT DISTINCT area_key 
FROM areas ar 
WHERE ar.area_key IN (SELECT area_key FROM sublist_1) 
OR ar.area_key IN (SELECT area_key FROM sublist_2))
AND sar.area_id = ar.area_id AND bl.sar_id = sar.sar_id

統合する必要があるもの (部分的に間違った構文!) が、正しく取得できません:

LEFT JOIN (SELECT tb1.name, tb1.id_1, tb1.id_2, tb1.info1, tb1.info2, tb1.area_key
FROM Table1 tb1) ON ar.area_key = tb1.area_key 
AND bl.id_1 = tb1.id_1 AND bl.id_2 = tb1.id_2

LEFT JOIN (SELECT tb2.name,  tb2.id_1, tb2.id_2, tb2.info1, tb2.info2, tb2.area_key
FROM Table2 tb2) ON ar.area_key = tb2.area_key 
AND bl.id_1 = tb2.id_1 AND bl.id_2 = tb2.id_2

画像: ここに画像の説明を入力

4

0 に答える 0