赞
踩
这次项目用到一个and和or混用的场景 , 因为用到多个or(循环), 没想到好的办法
最终转换成用 IN实现:
用left join链接多个表, 多个条件and筛选, 其中状态(state)条件筛选出多个可选状态的条目,
本来想用and 和 or 但是 or的条件是个数组参数, 需要遍历states , 可能0个可能多个, 拼了半天没有成功 , 最后发现用 IN 和FOREACH就可以了
- List<OrderInfoForm> selectOrdersByStatesSelective(
- @Param(value="order")Order order,
- @Param(value="states")Integer[] states);
- <select id="selectOrdersByStatesSelective" resultMap="AllResultMap" >
- select
- <include refid="All_Column_List" />
- from order_list
- LEFT JOIN product_method ON product_method.`code` = order_list.purchase_method
- LEFT JOIN product_color ON product_color.`code` = order_list.color
- LEFT JOIN product_guarantee ON produ
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。