У меня проблема с запросом, проблема в том, что мне осталось присоединиться три раза из одной и той же таблицы.
Вопрос такой:
SELECT
o.order_id,
n.title,
c.first_name,
tdv5.tid,
tdv6.name,
tdv8.name AS settlement_month
FROM orders o
join products p on o.product_id = p.nid
join node n on p.nid = n.nid
join customers c on o.customer_email = c.customer_email
join term_node tn on tn.nid = p.nid
join term_data tdv6 on tn.tid = tdv6.tid AND tdv6.vid = 6
left join term_data tdv5 on tn.tid = tdv5.tid AND tdv5.vid = 5
left join term_data tdv8 on tn.tid = tdv8.tid AND tdv8.vid = 8
Когда япри использовании этого запроса будет работать только первый JOIN, использующий tn.tid .Например, если единственное соединение из последних трех это:
join term_data tdv6 on tn.tid = tdv6.tid AND tdv6.vid = 6
Это будет работать нормально.То же самое с
left join term_data tdv5 on tn.tid = tdv5.tid AND tdv5.vid = 5
И
left join term_data tdv8 on tn.tid = tdv8.tid AND tdv8.vid = 8
Однако, когда я их объединю, они вообще не будут работать.Только tdv6 работает, когда я объединяю три запроса.
У вас есть предложения о том, что не так?Спасибо.