mysql数据库 怎么实现:传入一个列表,返回一个列表?

图片说明
+++
如图,这是老师的例程。
roleCodes 是一个String类型的列表,把它传进sql语句中,要怎么操作,才能返回一个列表出来?
+++
我只知道像: select * from User where id=#{id}; 这样的传入一个参数的语句。
请大神指教,谢谢
+++
图片说明

3个回答

 List<CourseTaskStatus> selectTaskStatusByCourseIds(@Param("courseIds") List<Integer> courseIds, @Param("userId") int userId);
<select id="selectTaskStatusByCourseIds" resultMap="CourseTaskResultMap">
        select 
       ...
        where chapter.course_id in
        <foreach collection="courseIds" item="id" open="(" close=")" separator=",">
            #{id}
        </foreach>
    </select>
要看findAuthorityByRoleCodes这个函数怎么实现的,有两个可能性,一个是它支持传入一个List<string>,一个是它只能支持单个的string
如果是后者,那么得自己循环
List<string> result = new List<String>();
for (String s: roleCodes)
{
String r = findAuthorityByRoleCodes(s);
result.Add(r);
}

还有就是

for (int i = 0; i < roleCodes; i++)
{
if (i == 0) 
strroleCodes = roleCodes[0];
else
strroleCodes = strroleCodes + "," + roleCodes[i];
}

然后对应的sql
select * from User where id in {#{strroleCodes}}
csdn_sqj
csdn_sqj 支持传入一个List<string>,是什么意思呢?怎么知道它支不支持?
6 个月之前 回复

select authority_code from role_authority where find_in_set(role_id,#{roleIds}

csdn_sqj
csdn_sqj 大神你好,我尝试使用你这句话,但是似乎拿不到数据,不知是我哪里写错了,已更新问题,想请你看看
6 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐