开发者社区> 问答> 正文

数据库多对多关联的问题

现有基础表用户表(user),每个用户的属性如图片URL、地址、职业与用户都是多对多的关系即一个用户可有多个图片、地址和职业。

对应的属性表为图片表(imgurl)、地址表(address)、职业表(profession),用户表user中不与属性表直接关联,

查询用户的信息时就需要关联中间表,用户图片表(user_imgurl),用户地址表(user_address),用户职业表(user_profession)

一次查询出某个用户所有属性信息的sql怎么写,现有表设计是否合理,如何优化

展开
收起
小旋风柴进 2016-03-10 14:36:33 2095 0
1 条回答
写回答
取消 提交回答
  • 假设user_id每张表都有

    select * from user a left join imgurl b on a.user_id=b.user_id left join on address c on a.user_id=c.user_id left join profession d on a.user_id=d.user_id
    
    select * from user a  
    left join user_imgurl b on a.user_id=b.user_id 
    left join user_address c on a.user_id=c.user_id 
    left join user_profession d on a.user_id=d.user_id 
    left join imgurl e on e.uer_imgurl=b.uer_imgurl  
    left join on address f on f.user_address=c.user_address  
    left join profession g on g.user_profession=d.user_profession 
    2019-07-17 18:57:39
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
DTCC 2022大会集锦《云原生一站式数据库技术与实践》 立即下载
阿里云瑶池数据库精要2022版 立即下载
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载