dzcgo 2023-03-25 15:25 采纳率: 0%
浏览 32
已结题

java项目 sql嵌套查询无法识别到占位符?,导致了前端服务器响应异常

java项目 sql嵌套查询无法识别到占位符?,导致了前端服务器响应异常

这里是我的两个占位符

   #sql ("queryReceivablesPlansByContractId")
        select a.plan_id,a.num,a.money,e.money2,a.return_type,date(a.return_date) as return_date
        from 72crm_crm_receivables_plan as a left join 72crm_crm_receivables as b on a.receivables_id = b.receivables_id
            left JOIN (select numnew,sum(money) as money2 from 72crm_crm_receivables where numnew is not null and plan_id
            is not null and contract_id = ? group by numnew) as e
            on a.num=e.numnew
        where a.contract_id = ? group by num
    #end

然后这里是进行参数的入参

img

    public R queryReceivablesPlansByContractId(Integer contractId, Integer receivablesId){
        List<Record> recordList = Db.find(Db.getSql("crm.receivablesplan.queryReceivablesPlansByContractId"),contractId,contractId);
        if (receivablesId != null){
            Record receivables = Db.findFirst("select plan_id,num,money,return_type,date(return_date) as return_date from " +
                    "72crm_crm_receivables_plan where receivables_id = ?", receivablesId);
            if (receivables != null){
                recordList.add(receivables);
            }
        }
        return R.ok().put("data",recordList);
    }

结果报错

img

img

注:我的mysql版本是5.7,sql文件中没有多余的注释这些

  • 写回答

1条回答 默认 最新

  • 成都渔民 2023-03-25 15:58
    关注

    我猜是sql本身的问题吧,你这个sql在客户端上单独执行过吗?
    另外,你可以把sql和代码用插入代码块的方式贴出来。方便大家修改。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月25日
  • 修改了问题 3月25日
  • 修改了问题 3月25日
  • 创建了问题 3月25日

悬赏问题

  • ¥15 informer代码训练自己的数据集,改参数怎么改
  • ¥15 请看一下,学校实验要求,我需要具体代码
  • ¥50 pc微信3.6.0.18不能登陆 有偿解决问题
  • ¥20 MATLAB绘制两隐函数曲面的交线
  • ¥15 求TYPCE母转母转接头24PIN线路板图
  • ¥100 国外网络搭建,有偿交流
  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验