Saltar al contenido

Cuando Usar las Variables de SQL?

Las variables de sql se utilizan para almacenar datos en memoria durante la ejecución de una sentencia sql. Esto nos permite manipular los datos de manera más eficiente y nos ahorra tiempo. En esta entrada vamos a ver cuándo es recomendable usarlas.

Las variable de sql son muy parecidas a las de cualquier lenguaje de programacion de alto nivel . La sintaxis es la misma, con la palabra clave «DECLARE» seguida del nombre de la variable y su tipo de datos.

Las variables podemos usarlas en las clausulas sql «WHERE«, «HAVING» y «ORDER BY«. En la mayoria de los sistemas gestores de base de datos el uso de variables es opcional, pero se recomienda su uso en algunos casos.

Índice

    Sisntaxis

    Para oracle, sqlserver , mysql y postgresql se usa la misma sintaxis.

    DECLARE nombre_variable VARCHAR(30);

    En este ejemplo, estamos declarando una variable de sql llamada «nombre_variable» que es del tipo de datos «varchar» y tiene un tamaño de 30 caracteres.

    Asingar valores

    Tambien podemos inicializar la variable al declararla:

    DECLARE nombre_variable VARCHAR(30) := ‘valor inicial’;

    en este caso, estamos asignando un valor por defecto a la variable.

    En sql server utilizamos SET y las varible utilizan un @ delante de su nombre

    Ejemplo:

    SET @nombre_variable = ‘valor inicial’;

    En postgresql utilizamos la palabra clave «IS» en lugar de «SET».

    Mysqlserver EJEMPLO:

    IS @nombre_variable = ‘valor inicial’;

    En mysql la sintaxis es un poco diferente. Debemos usar la palabra clave «SELECT» para asignar un valor a nuestra variable.

    EJEMPLO:

    SELECT @nombre_variable := ‘valor inicial’;

    MySQL también nos permite asignar valores a más de una variable en la misma sentencia sql. Para ello, simplemente debemos separarlas por comas.

    EJEMPLO:

    SELECT @nombre_variable := ‘valor inicial’, @otra_variable := ‘otro valor’;

    Una vez que hemos declarado nuestras variables de sql, podemos usarlas en cualquier parte de nuestra sentencia sql.

    Para hacer referencia a una variable, simplemente debemos anteponer el símbolo «@» al nombre de la misma.

    EJEMPLO:

    SELECT @nombre_variable; //devolverá ‘valor inicial’

    En ORACLE para asignar un valor a una variable en vez de usar SET se utliza :variable

    EJEMPLO:

    :nombre_variable := ‘valor inicial’;

    ademas los nombres de las variables en oracle no llevan el caracter @

    Bajo que criterios debemos usar variables?

    Existen ciertas reglas a seguir a la hora de usar variables en sql. A continuación, vamos a enumerar algunas de ellas:

    – Solo debemos usarlas si es necesario. Si podemos obtener el mismo resultado sin usar variables, entonces es mejor no hacerlo.

    – No debemos usar más de una variable por sentencia sql. Si necesitamos más de una variable, debemos dividir nuestra sentencia sql en varias partes.

    – Las variables deben tener un nombre significativo. De esta forma, será más fácil recordar su contenido y podremos reutilizarlas en el futuro.

    – No debemos usar variables para almacenar datos sensibles,

    En resumen, las variables de sql nos permiten almacenar valores en memoria durante la ejecución de una sentencia sql. Esto nos permite manipular los datos con mayor eficiencia y nos ahorra tiempo. Debemos usarlas solo cuando es necesario y siguiendo una serie de reglas para evitar problemas.

    ¿Conoces alguna otra regla a seguir a la hora de usar variables en sql? Compártela con nosotros en los comentarios.

    Gracias por leer! hasta la proxima entrada. sql, variables, cuando usar, oracle, postgresql, mysql , lenguajes de programacion , sintaxis. plsql.