Sql多張表的子查詢

  • 在日常開發中,我們會遇到取多張表的數據,但是幾張便只是兩兩關聯的話,這樣單獨的連接查詢就滿足不了需求,這個是就需要通過子查詢來獲得需要的數據,下面給出一個簡單的demo:
SELECT top 1 t4.end_time ,t1t2t3.* from crm_wy_fee_init t4 right JOIN
        (SELECT t3.name,t1t2.* from crm_owner t3 right JOIN
        (SELECT t2.owner_id,t1.*from crm_owner_residence t2 left JOIN 
        crm_residence t1 on t2.residence_code = t1.code WHERE t1.code=#{code})t1t2 //首先通過全連接查詢,通過給出的條件獲得t2的owner_id;
        on t3.id = t1t2.owner_id)t1t2t3 //然後通過之前查出的owner_id,通過左連接查詢出t3的name;
        ON t4.residence_code = t1t2t3.code and t4.kjkm='1101' //最後通過條件查詢出在t4表中和之前三張表子查詢獲得的數據;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章