多对多查询

Posted qin1993

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多对多查询相关的知识,希望对你有一定的参考价值。

先决条件一:多对多需要一种中间表建立连接关系;
先决条件二:多对多关系是由两个一对多关系组成的,一对多可以也可以用两种方式实现;

<resultMap type="TUser" id="userRoleInfo" extends="BaseResultMap">
        <collection property="roles" ofType="TRole" columnPrefix="role_">
            <result column="id" property="id" />
            <result column="Name" property="roleName" />
            <result column="note" property="note" />
        </collection>
    </resultMap>
    
    
    <select id="selectUserRole" resultMap="userRoleInfo">
        select a.id, 
              a.user_name,
              a.real_name,
              a.sex,
              a.mobile,
              a.note,
              b.role_id,
              c.role_name,
              c.note role_note
        from t_user a,
             t_user_role b,
             t_role c
        where a.id = b.user_id AND 
              b.role_id = c.id
     </select>    

 

以上是关于多对多查询的主要内容,如果未能解决你的问题,请参考以下文章

EF Core多对多查询加入3个表

Django 之 多对多查询与操作方法

hibernate多对多查询

优化查询以匹配和排除多个多对多条目

mybatis学习笔记(11)-多对多查询

NHibernate教程(11)--多对多关联查询