- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to declare a variable in MySQL for a normal query?
You can declare a variable using @anyVariablename which is a session variable. To create a session variable, you need to use SET command.
The syntax is as follows
SET @anyVariableName:=anyValue;
You can declare a local variable using DECLARE command. The syntax is as follows
DECLARE yourVariableName datatype
You can set the default value at the time of creating a variable. The syntax is as follows
DECLARE yourVariableName datatype default ‘yourValue’
Here is the demo of session variable. To understand it, let us create a table.
The query to create a table is as follows
mysql> create table SessionVariableDemo -> ( -> EmployeeId varchar(10), -> EmployeeName varchar(30), -> EmployeeAge int -> ); Query OK, 0 rows affected (0.70 sec)
Insert some records in the table using insert command. The query is as follows
mysql> insert into SessionVariableDemo values('EMP-101','Carol',30); Query OK, 1 row affected (0.20 sec) mysql> insert into SessionVariableDemo values('EMP-102','John',26); Query OK, 1 row affected (0.20 sec) mysql> insert into SessionVariableDemo values('EMP-103','Bob',25); Query OK, 1 row affected (0.19 sec) mysql> insert into SessionVariableDemo values('EMP-104','Sam',32); Query OK, 1 row affected (0.14 sec) mysql> insert into SessionVariableDemo values('EMP-105','Mike',35); Query OK, 1 row affected (0.11 sec) mysql> insert into SessionVariableDemo values('EMP-106','David',33); Query OK, 1 row affected (0.15 sec)
Display all records from the table using select statement. The query is as follows
mysql> select *from SessionVariableDemo;
The following is the output
+------------+--------------+-------------+ | EmployeeId | EmployeeName | EmployeeAge | +------------+--------------+-------------+ | EMP-101 | Carol | 30 | | EMP-102 | John | 26 | | EMP-103 | Bob | 25 | | EMP-104 | Sam | 32 | | EMP-105 | Mike | 35 | | EMP-106 | David | 33 | +------------+--------------+-------------+ 6 rows in set (0.00 sec)
Now, create a session variable using SET command. After that we will use this variable in the query to get all employee records with age greater than 30.
Let us create a session variable using SET command
mysql> set @AgeGreaterThan30:=30; Query OK, 0 rows affected (0.00 sec)
Here is the query that will use the session variable to get the employee records with age greater than 30
mysql> select *from SessionVariableDemo where EmployeeAge > @AgeGreaterThan30;
The following is the output
+------------+--------------+-------------+ | EmployeeId | EmployeeName | EmployeeAge | +------------+--------------+-------------+ | EMP-104 | Sam | 32 | | EMP-105 | Mike | 35 | | EMP-106 | David | 33 | +------------+--------------+-------------+ 3 rows in set (0.00 sec)