Supongamos que tenemos que buscar en la una Tabla teniendo parámetros opcionales. Por ejemplo, tenemos una aplicación con una búsqueda avanzada donde el usuario no tiene que llenar todos los criterios de búsqueda. Esto lo podemos solucionar con un pequeño truco; usando la función ISNULL.
CREATE PROC Buscar ( @param1 INT = NULL, @param2 INT = NULL ) AS BEGIN SELECT columna1 FROM tabla1 WHERE columna1 = ISNULL(@param1, columna1) AND columna2 = ISNULL(@param2, columna2) END
Si el primer parámetro en la función ISNULL es NULO, retorna el segundo parámetro, de lo contrario devuelve el valor del parámetro como tal.
Espero que os sirva de utilidad.
Si quieres más trucos de este tipo te invito a echarle un vistazo a este libro de SQL Server 2014 en Español
Comprar en Amazon | Comprar en Google Play |
Gracias.