Consultas acumulativas?
Hola compañeros.
Mi duda es la siguiente. ¿En SQL Server se pueden hacer consultas acumulativas de los resultados?. Me explico: Si por ejemplo yo hago: SELECT * FROM Cotxes WHERE Cotxes.Color = @Param_color y le paso @Param_color = Rojo, obtendré todos los coches de la tabla Cotxes con el color rojo. Pero quiero que después si ejecuto la misma consulta con el parametro @Param_color = Azul, no sólo me devuelva los azules, sino que además acumule los azules de ahora con los rojos de antes. :eek: ¿que; sabeis si puedo hacerlo facilmente sin necesitar añadir código o tablas temporales?. Gracias y un saludo. |
¿No te sirve hacer un UNION o agrupar?
|
que tal un OR ????
WHERE (Cotxes.Color = "rojo") OR (Cotxes.Color = "azul") |
... o hacer un IN, e ir acumulando los parametros en algun otro objeto, como un stringlist (separados por comas)
WHERE Campo IN (@valor), donde @valor = "rojo, azul, amarillo, verde, mamey..." |
Gracias a todos, pero creo que lo que se ajusta a mi pregunta es la última respuesta de Hector, ya que puedo ir pasando los valores incrementándolos a forma de concatenación separadas por comas.
No conocía la clausula IN para este uso, aunque podía haver sido deducido del uso que se le dá con las subconsultas, ya que entendiéndolo así es lo mismo, buscar entre un conjunto de valores dados, bien por una lista o bien por una SELECT anidada. Muchas gracias. ;) |
La franja horaria es GMT +2. Ahora son las 21:08:08. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi