mysql - oracle 多表查詢問題-笛卡兒積過濾
問題描述
問題如下:
查詢出現笛卡兒積過濾的問題 例子: A B C D E Q表
select e.name, e.age, e.phone, q.something from a a, b b, c c, d d, e e, q q where a.id = ’zhejiushiyige id’ and b.id = a.bid and c.id = b.cid and d.id = c.did and e.id = d.eid and q.aid = a.id
就是表e是從a開始一級一級比較下來的,最終得到的e的結果是正確的,但是q的結果會出現兩次,并且q只跟a有關聯,請問怎么查詢才能解決這個問題呢?
問題解答
回答1:q表和a表是一對多的關系,如果q表的結果只想出一條,可以在關聯前先把q表按照aid字段進行匯總,保證每個aid只有一條,如:
select e.name, e.age, e.phone, q.something from a a, b b, c c, d d, e e, (select aid, max(something)) from q group by aid) table_q where a.id = ’zhejiushiyige id’ and b.id = a.bid and c.id = b.cid and d.id = c.did and e.id = d.eid and table_q.aid = a.id
相關文章:
1. java中返回一個對象,和輸出對像的值,意義在哪兒2. css - chrome下a標簽嵌套img 顯示會多個小箭頭?3. vim - docker中新的ubuntu12.04鏡像,運行vi提示,找不到命名.4. docker網絡端口映射,沒有方便點的操作方法么?5. mysql - 在不允許改動數據表的情況下,如何優化以varchar格式存儲的時間的比較?6. mysql 為什么主鍵 id 和 pid 都市索引, id > 10 走索引 time > 10 不走索引?7. css3 - 純css實現點擊特效8. css - 網頁div區塊 像蘋果一樣可左右滑動 手機與電腦9. javascript - Img.complete和img.onload判斷圖片加載完成有什么區別?10. javascript - 有適合開發手機端Html5網頁小游戲的前端框架嗎?
