2016-04-03 3 views
0

У меня есть база данных предназначена как:запросов для многих ко многим

t_relationships

  • идентификатор (уникальный)
  • relationship_uuid
  • actor_uuid

t_actor

  • ID (уникальный)
  • actor_uuid
  • name_or_whatever_doesnt_matter

В таблице отношений имеет много актеров с одним relationship_uuid.

У меня проблемы с эффективным запросом, который даст мне всех актеров в отношениях с данным актером.

Например, если actor table есть записи [1,1,cat], [2,2,dog], [3,3,tree], [4,4,box]

и relationship имеет [1,1,1], [2,1,2], [3,1,3], [4,2,1] [5,2,4], [6,3,2], [7,3,4].

Каков наилучший способ узнать, кто находится в отношениях с котом?

ответ

0

Вам не нужны колонки id. Вы можете просто бросить их. Присоединение является тем, что вы ищете

select ar.name 
from t_actor a 
join t_relationships r on r.actor_uuid = a.actor_uuid 
join t_actor ar on ar.actor_uuid = r.relationship_uuid 
where a.name = 'cat' 
+0

Большое спасибо! – Michal

Смежные вопросы