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;
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐