0

我想使用动态查询或使用 iBATIS 的语句获取数据。

例如

select * from USERS where ID=1 or ID=12 or ID= 3 or ID=27.....

我想将一组 ID 作为列表对象传递。

4

2 回答 2

1

你可以使用 IN 语句

<select id="selectKeys" parameterType="list"
        resultMap="selectKeysResultMap">
        SELECT COL1,COL2
        FROM
        TABLE1
        WHERE COL1 IN
        <foreach item="item" index="index" collection="list" open="("
            separator="," close=")">
            #{item}
        </foreach>
    </select>
于 2013-11-26T08:28:30.733 回答
1

在你的 DataConnector 添加这个;

Map<String,Object> inputMap = new HashMap<String,Object>();

Map<String,Object> inputMap = new HashMap<String,Object>();

inputMap.put("idList", idList);

mapper.getMcqAnswers(inputMap);

在你的 DBMapper.xml 添加这个;

<select id="getMcqAnswers" resultType="your result type">

select id,answers from mcqs where id in

<foreach item="item" index="index" collection="idList" open="(" separator="," close=")">

${item}

</foreach>

</select>
于 2013-11-27T11:47:32.963 回答