gpt4 book ai didi

java - 使用 IN 子句对 arraylist 变量进行 SQL 查询

转载 作者:行者123 更新时间:2023-11-29 06:25:46 24 4
gpt4 key购买 nike

如何获取SQL查询

ArrayList<String> KeysTest=new ArrayList<>();     
for (TimelineResponse.TimelineJourney t : ((TimelineResponse) ((QueryClusterResponse) result).getResponse()).getJourneys()){
KeysTest.add(t.getKey());
}

"SELECT id ,event FROM CALL WHERE id IN '"+ KeysTest + "' AND cost > 5000 ;";

所以基本上 arraylist 的上述结果在查询的 IN 子句中作为变量。当我收到错误时如何使用它。注意:数据库中的id是varchar。

最佳答案

您无法使用 JDBC 将 JDBC 中的列表直接绑定(bind)到准备好的语句,只能直接在 HQL 中完成。如果你想直接使用 JDBC 准备语句,你可以使用 StringUtils 或 String like

StringUtils.join(list, ',')

或者对于 Java 8 及以上版本

String.join(",", list)

如果您使用 HQL,那么很简单,您只需将列表放入参数中,HQL 就会为您处理。

where key in (:list)
OR
setParameterList("key", list)

希望对您有所帮助。

关于java - 使用 IN 子句对 arraylist 变量进行 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59558053/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com