我正要对两个选择语句执行连接。
select x.A from (select blah - Q1 )x join (select blah - Q2 ) y on x.A = y.A
我有一个代替 Q2 的查询:
select c.cust_id, c.card_id, c.name, s.name, sum(b.amt) - sum(p.amt) as DUE_AMT, DATEDIFF( now(), min(b.due_date)) AS DELAY
from cust c
inner join bill b on b.cust_id = c.cust_id
left join payment p on p.bill_id = b.bill_id
inner join street s on s.street_id = c.street_id
where c.co_id=1
group by c.cust_id
上面的语句运行正常并返回一个结果集。
但是当我尝试将上述查询包含在 select * from (Q2) x 中时,mysql 工作台没有执行它。我究竟做错了什么?因为 select * from (Q1) x 也就是说,如果我输入其他查询,它会完美运行。
select * from (
select c.cust_id, c.card_id, c.name, s.name, sum(b.amt) - sum(p.amt) as DUE_AMT, DATEDIFF( now(), min(b.due_date)) AS DELAY
from cust c
inner join bill b on b.cust_id = c.cust_id
left join payment p on p.bill_id = b.bill_id
inner join street s on s.street_id = c.street_id
where c.co_id=1
group by c.cust_id
) x