2015-07-01 42 views
0
SELECT 
    daf.id as affiliate_id, 
    daf.name as affiliate_name, 
    dal.name as allocation_name, 
    dal.id as allocation_id, 
    dal.allocation,dal.price 
FROM 
    degreeamerica.affiliates daf,degreeamerica.allocations dal 
JOIN 
    (select pap.lead_price,pap.live from paul.affiliates_price pap) pafp 
ON (dal.id=pafp.allocation_id and daf.id=pafp.affiliate_id) 
ORDER BY daf.id; 

未知列pafp.allocation_id。我有這個專欄。但它不工作。請幫忙。多列子查詢不適用於笛卡爾積

+0

不要在'from'子句中使用逗號。總是使用明確的「連接」(即使是「交叉連接」)。這將解決您的問題。 –

+2

您在子查詢 –

+1

'(從paul.affiliates_price pap選擇pap.lead_price,pap.live,allocation_id,affiliate_id)'沒有該列以修復 – cske

回答

0

看起來你的子查詢中沒有選擇「allocation_id」列。 在子查詢選中的列中添加此列並進行檢查。

SELECT 
    daf.id as affiliate_id, 
    daf.name as affiliate_name, 
    dal.name as allocation_name, 
    dal.id as allocation_id, 
    dal.allocation,dal.price 
FROM 
    degreeamerica.affiliates daf,degreeamerica.allocations dal 
JOIN 
    (select pap.lead_price,pap.live, allocation_id from paul.affiliates_price pap) pafp 
ON (dal.id=pafp.allocation_id and daf.id=pafp.affiliate_id) 
ORDER BY daf.id;