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,
(select lead_price from paul.affiliates_price where affiliate_id = daf.id and allocation_id = dal.id) as lead_price,
(select live from paul.affiliates_price where affiliate_id = daf.id and allocation_id = dal.id) as live,
(select allocation from paul.affiliates_price where affiliate_id = daf.id and allocation_id = dal.id) as allocation
FROM
degreeamerica.affiliates daf, degreeamerica.allocations dal;
ORDER BY daf.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, pap.allocation_id,pap.affiliate_id from paul.affiliates_price pap) pafp
ON (dal.id=pafp.allocation_id and daf.id=pafp.affiliate_id)
ORDER BY daf.id;
其造成的錯誤。未知的daf.id 我使用笛卡兒積與多個列子查詢。 我已經花了8到9個小時。請幫忙。 告訴我第二個錯誤或爲我優化第一個錯誤。 請幫忙。
看起來你可以用做一個連接上affiliate_id = daf.id和allocation_id = dal.id – reptilicus
paul.affiliates_price它應該是一個笛卡爾聯接是不是有一個你可以加入的密鑰? –
我有三個表1)Affiliates_price 2)分支機構3)分配。我想要的是1)我需要在分配表中映射每個分支機構的所有分配。 2)然後使用我們從步驟1中的笛卡爾產品獲得的allocation_id和affiliate_id的組合來查找paul.affiliates_price的lead_price,live等。 –