VARIABLES DE MYSQL: QUÉ SON Y CÓMO CONSULTARLAS
En MySQL se pueden usar variables como en los lenguajes de programación y puede resultar bastante útil. Y se puede guardar el valor de una consulta Select a una variable.El sintaxis para asignar una variable dentro de una sentencia SELECT es: @var_name := value.Un ejemplo de lo útil puede ser, es cuando necesitas eliminar filas de datos en tablas múltiples donde las filas están ligadas por un
SELECT @id := dept_id FROM departamentos WHERE departamento = 'Personal';
SELECT * FROM empleados WHERE dept_id = @id;
Un ejemplo muy bueno del uso de variables en MySQL es par aobtener un campo de forma aleatoria. Ya que si tenemos una tabla con 10.000 registros: se suele hacer así:
SELECT * FROM MY_TABLE ORDER BY RAND() LIMIT 1;
SELECT @max_rows := count(*) FROM MY_TABLE;
SELECT @max_rows := FLOOR(RAND();
//Consulta donde se usa el número aleatorio
SELECT * FROM MY_TABLE WHERE id = @row_id
Ahora voy a escribir un poco sobre las variables de sistema, que son muy útiles para las personas que tratan de mejorar el rendimiento de su sesión de Mysql. Normalmente puedes ver el estado de estas variables utilizando el comando SHOW VARIABLES. Aunque las variables de sistema tienen valores por defecto, la mayoría de ellas pueden cambiarse en tiempo de ejecución usando el comando SET.
También hay variables de estado del servidor. Estos existen en las conexiones, y se puede actualizarlas en el archivo de configuración my.cnf Normalmente puedes ver el estado de estas variables utilizando el sentencia SHOW STATUS.