---
title: 如何在mybatis中使用in
date: 2020-04-16 09:59:59
tags: ['mybatis','in']
---
## 資料處理:
因為要使用in語句來執行,我們的大緻sql語句如下
`update table set column = x where id in (1,2,3)`
是以提前準備好1,2,3這樣的資料,大緻代碼如下:

使用lang3包join即可轉換為這種格式
## 資料擷取
這裡資料擷取就是mybatis的一個坑,如果使用#{param} 那麼會出現這種sql
`update table set column = x where id in ('1,2,3')`
括号裡面出現了引号,這肯定不是我們想要的,那麼考慮使用$符号來擷取資料,于是如下
`There is no getter for property named '*' in 'class java.lang.String`
發生了錯誤:
## 解決方案
在mapper參數前加上@Param("param") 注解,最後再使用$擷取參數即可