当前使用版本(必须填写清楚,否则不予处理)

mybaist-plus-core-3.2.0

该问题是怎么引起的?(最新版上已修复的会直接close掉)

重现步骤

public List<Zgis> queryAll() {
    Wrapper<Zgis> wrapper = new QueryWrapper<Zgis>().lambda().likeRight(Zgis::getGeohash, "wmg23")
            .apply("FLOOR(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('point(105.878169 32.419339)'), gis)) < {0}", 5000);
    return super.list(wrapper);
}

报错信息

java.sql.SQLException: Parameter index out of range (3 > number of parameters, which is 2). .

Comment From: amwgwiqpl

public List queryAll() { Wrapper wrapper = new QueryWrapper().lambda().likeRight(Zgis::getGeohash, "wmg23") .apply("FLOOR(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('point({0} {1})'), gis)) < {2}", 105.878169, 32.419339, 5000); return super.list(wrapper); }

Comment From: nieqiurong

需要拿mybatis生成的sql语句单独在你的数据库里面执行一次看看了