name表里的sharing_name和shared_name對應的都是info表里的phone,2張表通過同一個id連接,phone這列需要展示2列
做查詢時用代碼:
select m.phone,n.phone
from name
left join info m on name.id = m.id
left join info n on name.id = n.id
結果如圖,雖然結果是好的,但是總覺得哪里不太對,這個代碼怎么優化才好


uj5u.com熱心網友回復:
掐指一算,你所說的 “name表里的sharing_name和shared_name對應的都是info表里的phone” ,為啥感覺沒有對應關系呀,A a 這都表示的啥意思uj5u.com熱心網友回復:
通過id對應的 ,A的phone是17012345672uj5u.com熱心網友回復:
你這m.phone和n.phone有什么區別嗎,為什么要分成兩列left join info m on name.id = m.id
left join info n on name.id = n.id
這兩句不是一個意思嗎
uj5u.com熱心網友回復:
前端頁面展示的時候需要有2列,一列是sharing的phone,一列是shared的phoneuj5u.com熱心網友回復:
uj5u.com熱心網友回復:
但是你這樣寫和select m.phone,m.phone
from name
left join info m on name.id = m.id好像沒有區別吧,反正你那兩句邏輯上好像也都是一個意思
uj5u.com熱心網友回復:
說白了,就像是1#說的,你找的phone好像只是依據info表里的id吧,你說的share和sharing欄位起到了什么作用嗎?不就是兩張表直接on id=id的join起來,然后把查詢結果的name列顯示兩次嗎
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/235850.html
標籤:疑難問題
上一篇:求助嗚嗚嗚加急
下一篇:菜鳥的疑惑
