If tutorials available on this website are helpful for you, please whitelist this website in your ad blocker😭 or Donate to help us ❤️ pay for the web hosting to keep the website running.
So , basically programming language like PHP , Java , C , C++ etc की तरह ही आप MySQL में भी variables को define कर सकते हैं। और इस topic में आप सीखेंगे कि कैसे MySQL में variables define और use करते हैं।
variable किसी memory को दिया गया नाम है जो कि किसी value को Hold करती है या store करती है। तो आप कह सकते हैं कि variables named storage हैं जिनकी value need के according change हो सकती है।
तो MySQL में दो तरह से variables use करते हैं -
Global , User Defined Variables : ये global variables होते हैं। जिन्हे हम कहीं भी access कर सकते हैं।
Stores Procedure Variables : इन variables को किसी procedure के अंदर ही define और use किया जाता है , ये एक तरह से local variables होते हैं।
तो किसी variable को define करने के लिए @variable_name
दे दिया जाता है , और जो भी value आपको assign करनी है वो आप directly = की help से assign कर सकते हैं।
For Example
SET @total_orders=0;
अब आप इसे normally SELECT statement के साथ access कर सकते हैं।
SELECT @total_orders;
+---------------+ | @total_orders | +---------------+ | 0 | +---------------+
जो भी variables define करेंगे वो current active session तक ही रहेंगे एक बार अगर हमने database से logout हो गये तो variable remove हो जयगा।
अगर कोई variable define नहीं but आप उसे access कर रहे हैं तो आपको NULL मिलेगा।
जैसे-
SELECT @non_defined_var;
+------------------+ | @non_defined_var | +------------------+ | NULL | +------------------+
आप किसी table column की value को भी किसी user defined value में set कर सकते हैं।
SELECT @max_salary:=MAX(salary) FROM users;
Output
+--------------------------+ | @max_salary:=MAX(salary) | +--------------------------+ | 34231 | +--------------------------+
अब @max_salary
में user की maximum salary है इसे आप कभी और किसी भी तरीके से use कर सकते हैं।
SELECT @max_salary;
+-------------+
| @max_salary |
+-------------+
| 34231 |
+-------------+
या किसी condition में भी use कर सकते हैं।
For Example
SELECT * FROM users WHERE salary=@max_salary;
+----+-------+----------+---------------+--------+---------------------+
| id | name | mobileno | address | salary | created_at |
+----+-------+----------+---------------+--------+---------------------+
| 8 | Rohan | NULL | ROhan Address | 34231 | 2023-01-08 08:49:42 |
+----+-------+----------+---------------+--------+---------------------+
जैसा कि आपने ऊपर पढ़ा कि इन variables को किसी procedure के अंदर ही define और use किया जाता है , और ये local variables होते हैं।
local variable को define करने के लिए DECLARE
keyword का use किया जाता है जिसके साथ हमें variable name और Datatype define करना पड़ता है , इसके अलावा आप default value भी set कर सकते हैं।
DECLARE variable_name datatype [DEFAULT value];
Explanation
सबसे पहले variable का name जो भी आपको सही लगे , ध्यान रहे कोई भी predefined keyword name नहीं होना चाहिए।
then , variable का data type define करने है जैसे int , text या varchar जो भी है।
finally आपको default value assign कर देना है , हालाँकि default value optional है by default NULL होता है।
For Example
DECLARE var1 int DEFAULT 0;
या आप एक साथ same data type के variables define करके default value भी set कर सकते हैं।
DECLARE var1, var2, var3 INT DEFAULT 0;
इन्हे किसी procedure में कुछ इस तरह से use कर सकते हैं।
DELIMITER $$
Create Procedure var_test()
BEGIN
DECLARE var1 INT DEFAULT 100;
DECLARE var2 INT;
DECLARE res INT;
SET var1 = 90;
SET var2 = 45;
SET res = var1 + var2;
SELECT var1, var2, res;
END $$
DELIMITER ;
इसके बाद आपको सिर्फ var_test()
procedure call करना है , जिससे आपको result दिख सके।
CALL var_test();
+------+------+------+
| var1 | var2 | res |
+------+------+------+
| 90 | 45 | 135 |
+------+------+------+
आपको MySQL में variables के बारे में अच्छे से समझ आ गया होगा।