![]() |
múltiples filtros de consulta
Hola amigos.
Estaba buscando la mejor manera de poder usar múltiples filtros en una consulta en función de checkbox, pero la única forma que se me ocurre es poner las palabras claves en diferentes strings y luego concatenarlas. No se si es lo más adecuado o existe otra forma más convincente y a la par elegante ;). Gracias y FELIZ AÑO NUEVO!!!! |
me parece que lo mejor es el uso de procedimientos almacenados, mandas todos los parámetros a este e internamente armas un sql dinámico, preguntas que si cierto parámetro llega nulo no l tenga en cuenta, no recomiendo el uso de COALESCE ya que este mismo en una consulta con muchos registros en un where genera un scan sobre todos los registros sin filtrar, mejor armas el sql y lo qjecutas al fina, yo lo suelo hacer y me funciona muy bien.
|
Hola y gracias por responder.
ando perdido. Para una consulta lo tengo montado asi:
donde suma11 es un campo que he tenido que crear porque sino no me lo reconoce (uso sqlite) con firebird no hacia falta. filtro2 es la clave por la que se busca. Eso así funciona, lo que no tengo muy claro, teniendo en cuenta que campos string para anidar no me lo recomiendas, como se haría con los procedimientos que me dices. un saludo y gracias |
Pos para SQL Lite no se como se haría, pero te pongo un ejemplo del sp, la invocación desde Lazarus con ZeosDB que me parece es el que usas es simple, usa un componente que sino estoy mal es el TzStoredProcedure, este control se encarga de todo, solo le pasas los valores de los parámetros y ya.
|
La franja horaria es GMT +2. Ahora son las 02:05:10. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi