Não consegui entender muito bem sua dúvida. Você quer saber como criar filtros com vários parâmetros, mesmo que algum deles não seja aplicado? Algo como:
+----------+----------+
| cod | nome |
+----------+----------+
| 1 | a |
+----------+----------|
| 2 | a |
+----------+----------|
| 3 | b |
+----------+----------|
| 4 | b |
+----------+----------|
Aí se o filtro ‘nome’ estiver setado como “a” e o ‘cod’ não estiver, retornaria os dois primeiros resultados? Mas se o ‘cod’ estivesse setado como “1” retornaria somente o primeiro? É isso?
// não sei se deixei mais claro ou baguncei tudo de vez... :)