queryWrapper写内联接,多表查询
·
LambdaQueryWrapper<Order> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.select(Order::getOrderDate, Order::getOrderType,
Member::getName, Setmeal::getName)
.eq(Order::getId, id)
.eq(Member::getId, Order::getMemberId)
.eq(Setmeal::getId, Order::getSetmealId);
Map<String, Object> orderMap = orderService
.listMaps(queryWrapper)
.stream()
.findFirst()
.orElse(null);
return orderMap;
<!--根据预约id查询预约信息,包括体检人信息、套餐信息 隐式内联接-->
<select id="findById4Detail" parameterType="int" resultType="map">
select m.name member ,s.name setmeal,o.orderDate orderDate,o.orderType orderType
from
t_order o,
t_member m,
t_setmeal s
where o.member_id=m.id and o.setmeal_id=s.id and o.id=#{id}
</select>
QueryWrapper<Order> queryWrapper = new QueryWrapper<>();
queryWrapper.select("m.name as member", "s.name as setmeal", "o.orderDate", "o.orderType")
.eq("o.id", id)
.innerJoin("t_member m", "m.id = o.member_id")
.innerJoin("t_setmeal s", "s.id = o.setmeal_id");
List<Map<String, Object>> orderMaps = orderService.listMaps(queryWrapper);
// 转换成单个 Map 对象
Map<String, Object> orderMap = orderMaps.stream().findFirst().orElse(null);
return orderMap;
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)