问题描述
@Repository
interface scoresRepository : MongoRepository<score,String> {
fun countAllByscoreIsBetween(min: Int,max: Int): Int
}
@Document
data class score(
@Id var score: Int,)
之间是包含的还是不包含的?也就是说,如果我有 1-10 分,我打电话给:
countAllByscoreIsBetween(3,6)
我会得到 4 个还是 2 个?或者其他的东西 - 底部是包容性的,顶部是独占的?
解决方法
测试(使用 testcontainers
)显示:
@Autowired
lateinit var scoresRepository: ScoresRepository
@Test
fun test() {
for (i in 1..10) {
scoresRepository.save(Score(score = i))
}
val count = scoresRepository.countAllByScoreIsBetween(3,6)
assertThat(count).isEqualTo(2)
}
据我所知,两个参数都不包括在内。也就是说,Between
表示值之间的所有内容,不包括值本身。