关于 in 查询的问题

可以学习啦哈哈哈 2021-07-15 11:20:08

 

比如我现在有二个map<string,string>  para  长度各是100

里面放的查询字段  

 

 

在数据库中有一个

select * from a  where id=key  and name=value

我现在是for  这个MAP一条一条去查,说要优化。

这个有什么办法优化方案吗?

...全文
391 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

再问一下,这样拼接的话,ORACLE有没有长度限制?

是赵敢敢啊 2021-07-15
  • 举报
回复
@可以学习啦哈哈哈 in最多能拼接1000个
=PNZ=BeijingL 2021-07-15
  • 举报
回复
@可以学习啦哈哈哈 separator="or" 表示or 拼接,所以是没有长度限制的 Oracle只有in 有最大长度1000限制
是赵敢敢啊 2021-07-15
  • 举报
回复
@=PNZ=BeijingL 强啊老哥
3条回复
是赵敢敢啊 2021-07-15
  • 打赏
  • 举报
回复
<select id = "selectBat">
  select * from a 
    <where>
      <foreach collection="map"  item="val" index="key" separator="or">
        (id = #{key} and name = #{val})
      </foreach>
    </where>
</select>

51,407

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧