MySQL where in后面参数格式 java entity sql in

  • Post author:
  • Post category:java



前述:

我是学PHP的,让领导生生逼成java,刚开始java不是很熟练,所以能用sql搞定的坚决不用java。久而久之养成这种习惯。java  中 sql  中的where in 后面值如何给出。PHP是直接给数组格式的参数就行,但是java我试了直接给数组或者list都没有成功。


代码:

以下是在springboot框架下中的entity中直接写的sql

1、in 后面的参数需要循环给出。

@Select("<script>"
            + "SELECT * from `goods` g WHERE community_id  IN"
            + "<foreach item='communityId' collection='communityIds' open='(' separator=',' close=')'>"
            + "#{communityId}"
            + "</foreach>"
            + " ORDER BY scan_num DESC;"
            + "</script>")
    List<Map<String,Object>> findGoodsList(@Param("communityIds") String [] communityIds);


代码解释:

1、参数1:@Param(“communityIds”) String [] communityIds   :格式一目了然是数组格式;也可以是任意可循环的格式。

2、循环中的collection属性值对应的是参数一。

3、循环中的item属性值,可以自定义任何符合参数命名的名字。但必须与#{communityId}中形参对应;



版权声明:本文为wlm123565原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。