mysql - sql查詢語句問題
問題描述
有兩張表
tbl_user(uid,uname,province_id,city_id,area_id)tbl_area(id,aname,pid)
其中province_id,city_id,area_id全部為tbl_area表的主鍵id能不能通過一條sql語句查詢出如下結果
uid,uname,province_name,city_name,area_name 1, 張三, 河北, 衡水, 饒陽
問題解答
回答1:SELECT u.uid, u.uname, p.aname AS province_name, c.aname AS city_name, a.aname AS area_nameFROM tbl_user AS uLEFT JOIN tbl_area AS p ON p.id = u.province_idLEFT JOIN tbl_area AS c ON c.id = u.city_idLEFT JOIN tbl_area AS a ON a.id = u.area_idLIMIT 100回答2:
你確定上面的信息只通過2張表就能查詢到?province_name,city_name,area_name這3字段都沒出現(xiàn)!
回答3:答案如@黃弘 所說。但更好的設計應該是區(qū)分三張表,因為省、市、縣基本就是常量表,基本不會發(fā)生改變,用不同的表存儲會比較好。
相關文章:
1. PHP類封裝的插入數(shù)據,總是插入不成功,返回false;2. python2.7 - python 函數(shù)或者類 代碼的執(zhí)行順序3. javascript - immutable配合react提升性能?4. android glide asbitmap 在baseadpter中的問題5. javascript - requestAnimationFrame如何控制幀速?6. nginx - ngnix問題7. mysql 慢查詢日志中的內容查看問題8. 求救一下,用新版的phpstudy,數(shù)據庫過段時間會消失是什么情況?9. css - 寫頁面遇到個布局問題,求大佬們幫解答,在線等,急!~10. php - 微信開發(fā)驗證服務器有效性

網公網安備