rtmatWkoutdService.list(new QueryWrapper<RtmatWkoutd>().eq("spid", matter.getWkoutid()).eq("sMatID", labMat.getSmatid()).eq("irowtype", 2).lambda().apply("and nqty-(nAddOutQty+nreturnqty)>0"));com.microsoft.sqlserver.jdbc.SQLServerException: 关键字 'and' 附近有语法错误。
时间: 2023-06-12 10:05:46 浏览: 106
spid.rar_533_Blackfin_SPID_blackfin SPI_visual c
根据错误提示,查询语句中的 'and' 附近有语法错误。请确保查询语句的正确性,比如检查括号是否匹配、关键字是否正确使用等。另外,也可以尝试将 lambda 表达式中的 apply() 方法移动到 lambda 表达式的外面,例如:
```
rtmatWkoutdService.list(new QueryWrapper<RtmatWkoutd>()
.eq("spid", matter.getWkoutid())
.eq("sMatID", labMat.getSmatid())
.eq("irowtype", 2)
.lambda()
.and(q -> q.gt("nqty-(nAddOutQty+nreturnqty)", 0))
);
```
这里使用了 QueryWrapper 的 and() 方法来添加条件,传入一个 Lambda 表达式来构造查询条件。在 Lambda 表达式中,使用 gt() 方法添加大于条件。注意,这里的加号应该写成 "+nreturnqty",而不是 "nreturnqty"。
阅读全文