わかりました、私はまだSQLの初心者であり、これをまだ理解できません。私には4つのテーブルがあります:companys、persons、details、person_details。
companies:
id, compname
(1, ACME),
(2, ACME Group), ...
persons:
id, name, lastname, company id
(1, donald, duck, 1),
(2, lucky, luke, 1),
(3, mickey, mouse, 2)
details:
id, description
(1, 'weight'),
(2, 'height'),
(3, 'haircolor'), ...
person_details:
id, persons id, details id, value
(1, 1, 1, 70),
(2, 1, 3, 'red'),
(3, 2, 1, 90),
(4, 3, 2, 180)
ご覧のとおり、すべての人がすべての詳細を持っているわけではなく、利用可能な詳細のリストはさまざまです。
ここで、特定の個人IDと詳細IDの配列について、会社名とID、個人名と姓、詳細名と、提供された配列内の各詳細の値を含む行を取得したいと思います。たとえば、persons(1,2)、details(1,3)の結果は次のようになります。
companies.id, companies.name, name, lastname, details.description, person_details.value,...
1, ACME, donald, duck, 'weight', 70, 'haircolor', 'red'
2, ACEM, lucky, luke, 'weight', 90, 'haircolor', null
助けてください...