sql级联查询mapper.xml
时间: 2024-03-06 12:44:25 浏览: 113
Mybatis级联查询
在SQL中,级联查询是指通过多个表之间的关联关系,一次性查询出相关联的数据。在MyBatis中,可以通过mapper.xml文件来定义和配置级联查询。
下面是一个示例的mapper.xml文件中的级联查询配置:
```xml
<!-- 定义主表 -->
<resultMap id="OrderResultMap" type="Order">
<id property="orderId" column="order_id"/>
<result property="orderNo" column="order_no"/>
<result property="customerId" column="customer_id"/>
<!-- 定义关联表的映射关系 -->
<association property="customer" javaType="Customer">
<id property="customerId" column="customer_id"/>
<result property="customerName" column="customer_name"/>
<result property="customerAddress" column="customer_address"/>
</association>
</resultMap>
<!-- 定义查询语句 -->
<select id="getOrderWithCustomer" resultMap="OrderResultMap">
SELECT o.order_id, o.order_no, o.customer_id, c.customer_name, c.customer_address
FROM orders o
INNER JOIN customers c ON o.customer_id = c.customer_id
WHERE o.order_id = #{orderId}
</select>
```
在上述示例中,首先定义了一个主表的结果映射(resultMap),然后在该结果映射中定义了关联表的映射关系(association)。在查询语句中,使用了INNER JOIN将主表和关联表进行连接,并通过WHERE子句指定了查询条件。
通过以上配置,可以实现一次性查询出订单(主表)和客户(关联表)的相关信息。
阅读全文