T-SQL: Parámetros opcionales en procedimientos almacenados usando ISNULL

·1 min de lectura·

SQL Server

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

SQL Server 2014 - Amazon Kindle

Comprar en Google Play

SQL Server 2014 - Google Play Books

Comentarios (0)

Sé el primero en comentar.

T-SQL: Re-Indexar todas las tablas de una Base de Datos

·1 min de lectura

El artículo explica cómo re‑indexar todas las tablas de una base de datos SQL Server cuando no existe un comando único para ello. Se presenta un script TSQL que recorre el catálogo de datos, obtiene los nombres de todas las tablas base y ejecuta DBCC DBREINDEX para cada una, evitando mensajes de información. El cursor se cierra y libera al finalizar. El autor sugiere que el código sea útil y menciona un libro de SQL Server 2014 en español como recurso adicional.

Instalando SQL Server en Linux

·3 min de lectura

Microsoft lanzó una versión de SQL Server para Linux, lo que permite a los administradores instalar, usar y mantener el motor en sistemas como Red Hat Enterprise Linux 7, CentOS 7 y Ubuntu 16.04 64 bits. Se requiere al menos 4 GB de RAM. El proceso en Ubuntu implica agregar la clave GPG, añadir el repositorio, actualizar paquetes, instalar dependencias y ejecutar el script de configuración, aceptando los términos de licencia. Una vez instalado, se puede conectar con la línea de comandos, crear bases de datos y usar los mismos comandos que en Windows.