美文网首页
SQL查询报错Parameter index out of ra

SQL查询报错Parameter index out of ra

作者: dengcaiyun01 | 来源:发表于2017-10-10 20:09 被阅读0次

    报错信息为:

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

    出错的SQL语句为:

     SELECT    count(DISTINCT order_id)   

     FROM    t_lm_seckill_pool   

     WHERE  LOCATE('"gongjijin":"有"',info) > 0 AND              

     (  LOCATE(CONCAT('"zhiye":','"',?,'"'),info) > 0   

    or    LOCATE(CONCAT('"zhiye":','"',?,'"'),info) > 0  )     AND    

     LOCATE('"gongzixingshi":?',info) > 0  AND 

    sold_state = 0

    仔细查看sql语句,出错点在于LOCATE('"gongzixingshi":?',info) > 0。

    对应在xml文件中的实现为

    LOCATE('"gongzixingshi":#{gongzixingshi,jdbcType=VARCHAR}',info) > 0  

    要实现的功能是查询"gongzixingshi":"银行转账"在info字段中是否被包含,

    改为:LOCATE(CONCAT('"gongzixingshi":','"',#{gongzixingshi},'"'),info) > 0  即可。

    相关文章

      网友评论

          本文标题:SQL查询报错Parameter index out of ra

          本文链接:https://www.haomeiwen.com/subject/vsubyxtx.html