Varios valores en SELECT

¿Cómo podría formular una consulta SELECT donde los valores de uno de los campos son dinámicos, específicamente, los valores de sintom, que es una matriz de String, se determinan en la ejecución, ¿cómo podría modificar esta consulta?

       q = "SELECT DISTINCT nome FROM malattia WHERE eta='" + age + "' AND sesso='" + sexstr + "' AND etnia='" + etniastr + "' AND sintomi IN('" + sexstr + "')";

Necesitaría algo como esto:

  ... AND sintomi IN('" + sexstr[0] + "','" + sexstr[1] + "','" + sexstr[2] + "')";

La matriz sintom puede tener una longitud de 1 a 10, no opté por la declaración preparada, pensé que sería un poco simple, si uso la concatenación de cadenas. Más adelante, no puedo usar un bucle porque necesito lograrlo en una sola consulta. ¡Gracias por adelantado!

preguntado el 27 de agosto de 11 a las 21:08

1 Respuestas

Utilizan guayaba Joiner.on("','").join(array) or commons-lang StringUtils.join(array, "','")

Respondido 28 ago 11, 01:08

Estaba pensando que lo contrario es siempre tener 10 elementos y llenar los no utilizados con basura que no coincidirá, pero esta respuesta es la correcta. - Bohemio ♦

Gracias y ¿cómo debería cambiar esto mi consulta? - Ficha de ejercicios para

en lugar de tener + ... + ..., simplemente pones el join(..) dentro de IN ('"..."') - Bozho

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.