小编Sid*_*ddP的帖子

如何在 myBatis datamapper.xml 中添加 if 条件

这就是我想要的

<update id='stoIncrement' parameterType='java.util.Map'>
update DB set 
<if test="#{is_increase} == 1">
count=(select max(count) from DB) +1 
 </if>
<if test="#{is_increase} == 0">
count=(select max(count) from DB) -1 
 </if>
where store=#{store}
</update>
Run Code Online (Sandbox Code Playgroud)

这里is_increase是参数映射的键,不是表的实体。

但以上似乎不起作用。有人可以在这方面提供帮助吗?

谢谢

java sql ibatis mybatis

5
推荐指数
1
解决办法
2万
查看次数

如何将在mybatis映射器xml中执行的sql查询打印到控制台

假设我在我的mapper xml中执行下面的查询:

<select id="getData" parameterType="java.util.HashMap" resultType="java.util.LinkedHashMap">

select * from emp where empId=#{empId}          
    </select>
Run Code Online (Sandbox Code Playgroud)

在上面的xml中,empId是动态值,它返回HashMap的键中的值,该值作为Mybatis中上面的mapper xml中的参数传递.

当运行映射到方法getData的上述选择查询时,有没有办法将带有传递的参数的sql打印到控制台.

例如,我想在控制台中传递数据empId = 1:select*from emp其中empId = 1

java orm ibatis java-ee mybatis

3
推荐指数
1
解决办法
8472
查看次数

如何在mybatis中的结果映射中返回具有空值的列

<select id="keyEquipmentShiftAutomatedModelData" parameterType="java.util.Map" resultType="java.util.Map">
SELECT  ID, SUM(VALUE1 + VALUE2) Total
FROM    tableName
GROUP   BY ID
    </select>

Returns below result in sql

ID, Total
1   (null)
Run Code Online (Sandbox Code Playgroud)

但是当在Map中返回结果时,myBatis返回{ID = 1},其中Total缺失.如何将带有null的列添加到结果集中以及类似这样的内容{ID = 1,Total = null}或类似这样的内容{ID = 1,Total =""}

java orm ibatis mybatis

2
推荐指数
1
解决办法
3656
查看次数

标签 统计

ibatis ×3

java ×3

mybatis ×3

orm ×2

java-ee ×1

sql ×1