文章详情页
mysql - sql查询语句问题
浏览:98日期:2022-06-20 08:51:54
问题描述
有两张表
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字段都没出现!
回答3:答案如@黄弘 所说。但更好的设计应该是区分三张表,因为省、市、县基本就是常量表,基本不会发生改变,用不同的表存储会比较好。
相关文章:
1. mysql - 用PHPEXCEL将excel文件导入数据库数据5000+条,本地数据库正常,线上只导入15条,没有报错,哪里的问题?2. docker - 如何修改运行中容器的配置3. angular.js - angularJs ngRoute怎么在路由传递空字符串及用ng-switch取得4. dockerfile - [docker build image失败- npm install]5. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!6. 为什么我ping不通我的docker容器呢???7. nignx - docker内nginx 80端口被占用8. docker绑定了nginx端口 外部访问不到9. docker不显示端口映射呢?10. docker-compose中volumes的问题
排行榜
