在mybatis查询的过程中,某个字段是经过计算得到的,这时,在设计数据表的时候,就不 必在增加此对应的字段
那么,在查询的时候,页面有需要展示这个字段时,怎么办呢?
举个例子:
在查询微信团商品时,根据微信团商品的(wag.id)id,计算商品的数量,有几个商品就是N选一,
这就体验到mybatis的强大之处了,
在创建Model的时候,增加此字段的属性.
public class WeixinActivity extends BaseBO { /**
* X选一
*/
private String chooseN;//这个字段在数据库中是不存在的choose_n set方法 get方法 }
在mapper.xml映射的时候需要注意,
<result column="choose_n" property="chooseN" />
<!--
这里的choose_n是下划线格式的,那么在查询的结果的在as的时候也应该是as choose_n
--> (
SELECT COUNT(wag.id)
FROM weixin_activity_goods wag
WHERE wag.is_delete = 'N' AND wag.weixin_activity_id = wa.weixin_id) AS choose_n <!--如果在映射的时候是这样的--> <result column="chooseN" property="chooseN" /> <!--那么在AS 的时候应该是这样的 --> (
SELECT COUNT(wag.id)
FROM weixin_activity_goods wag
WHERE wag.is_delete = 'N' AND wag.weixin_activity_id = wa.weixin_id) AS chooseN <!--column 是数据列,property是Model的属性 -->