java - 如何在java中的sql查询中使用map.KeySet()

标签 java dictionary keyset

我有一个LinkedHahMap ma​​p1,其中的key作为我的beam_current,它是 double 类型,值作为我的logtime,它是字符串类型。 现在我想在我的sql查询中使用这个map1.keySet()作为-

Set<Double> arr=    map1.keySet();
String vs2="select b.beam_current, b.beam_energy where
          b.logtime between '"+first+"' and '"+last+"' and b.beam_current in('"+arr+"')";

但是当我使用arr(它保存map1键的值)时,**没有显示任何内容。**我们不能使用map1.KeySet()方法吗sql 查询还是我以错误的方式实现它?

最佳答案

首先将 map 键转换为逗号分隔的字符串,然后在查询中使用它。

  List<Double> slist = new ArrayList<Double>(map1.keySet());
  String s = StringUtils.join(slist, ',');


      String vs2="select b.beam_current, b.beam_energy where
                  b.logtime between '"+first+"' and '"+last+"' and    
                  b.beam_current in('"+s+"')";

关于java - 如何在java中的sql查询中使用map.KeySet(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28452098/

相关文章:

java - 如何在struts2中显示select标签的值

Java - 如何创建一副纸牌(重点是静态数组)? - AP计算机科学项目

java - 解释 Java 8 收集器接口(interface)/方法签名

java - 如何从 Java 中的方法返回通用 Map

function - 在 Elm 中使用 Dict.update 和嵌套更新函数

java - 为什么我的整数不是 0,而是我在倒计时器中设置的值?

python - 从列表中删除字典

java - HashMap 作为字符串的 ArrayList

java - 如何在 Junit (Java) 中测试集合

Java:HashMap 声称它有 key ,但不知何故没有