我如何制定一个SELECT查询,其中一个字段的值是动态的,具体来说,执行时就确定了sintom的值(它是String的数组),我如何修改此查询:
q = "SELECT DISTINCT nome FROM malattia WHERE eta='" + age + "' AND sesso='" + sexstr + "' AND etnia='" + etniastr + "' AND sintomi IN('" + sexstr + "')";
我需要这样的东西:
... AND sintomi IN('" + sexstr[0] + "','" + sexstr[1] + "','" + sexstr[2] + "')";
数组sintom的长度可以是1到10,如果我使用字符串连接,我没有选择preparestatement认为这会有点简单。此外,我不能使用循环,因为我需要在一个循环中完成它单一查询。提前致谢!
最佳答案
使用guava Joiner.on("','").join(array)
或commons-lang StringUtils.join(array, "','")
关于java - SELECT中的多个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7217480/