【发布时间】:2010-11-10 12:51:38
【问题描述】:
我在重写此查询以使用联接而不是两个子查询时遇到了一些麻烦。如果你明白我的意思,我很难解开它。
SELECT o.order_id, n.title, c.first_name, t1.name, o.product_id,
(SELECT ttd2.tid FROM term_data ttd2, term_node ttn2 WHERE ttd2.vid = 5 AND ttn2.nid = p.nid AND ttd2.tid=ttn2.tid) AS tid,
(SELECT ttd4.name FROM term_data ttd4, term_node ttn4 WHERE ttd4.vid = 8 AND ttn4.nid = p.nid AND ttd4.tid=ttn4.tid) AS month
FROM orders o, products p, node n, customers c, term_data t1, term_node t2
WHERE o.product_id = p.nid
AND p.nid = n.nid
AND o.customer_email = c.customer_email
AND t2.tid = t1.tid
AND t1.vid = 6
AND n.nid = t2.nid
你能帮忙吗?或者提供一些线索/提示。
【问题讨论】:
-
主子句表和子查询表之间没有关系 - 这是故意的吗?
-
@Roopesh Shenoy,其实是有的,不过你得用滚动条才能看到。
-
是的,你是对的,我错过了“p”。对不起!