我有一个用例,从表中选择ID,其中名称不应该位于动态生成的列表中,有时可以为空

@SqlQuery("SELECT id FROM APP_TABLE a WHERE a.app_id = :appId AND a.name NOT IN (<nameList>)")
public List<Long> getIds(@Bind("appId") String appId, @BindIn(value = "nameList") List<String> nameList);


只要nameList为空,就会引发异常。请建议修改查询以实现该用例。

最佳答案

如果列表为空,只需在列表中添加空白,
if(nameList.isEmpty()) nameList.add("");

关于java - 如何编写一个MySql select查询,其中id NOT IN列表可以为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54797867/

10-09 08:24