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.
OK तो जब आप data को database में store करते हैं , तो कभी - कभी आपको उन records को update करने की जरूरत भी होती है , और इस topic में हम यही सीखेंगे कि किसी table में किस तरह से किसी particular record को update करते हैं।
MySQL में UPDATE
statement का use करके table available records को update किया जाता है। update करने का मतलब है एक या एक से अधिक column values को change करना।
records को update करने के लिए नीचे दिए गए syntax को follow कर सकते हैं।
UPDATE table_name
SET
column_name1 = value1,
column_name2 = value2,
...
[WHERE condition if any];
Syntax Explanation
सबसे पहले table name define करें , जिस table के records आपको update करने हों।
फिर जिन column(s) को update करना चाहते हैं , उन्हें एक new value assign कर दें अगर columns multiple हैं तो comma separated value assign कर दें।
finally अगर कोई condition है तो वो लगा कर दें , हालाँकि अगर condition नहीं है तो सभी columns updates होंगे।
Example के लिए मेरे users
table में कुछ records हैं , तो सबसे पहले मैं उन records को fetch करके देखते हैं , कि उसमे कौन कौन से records available हैं।
SELECT * FROM users;
Output
+----+--------------+------------+---------+--------+---------------------+ | id | name | mobileno | address | salary | created_at | +----+--------------+------------+---------+--------+---------------------+ | 1 | Tom | 3243907889 | India | 1000 | 2023-02-10 10:07:26 | | 2 | Tom Holland | 9043907889 | NULL | 1200 | 2023-02-09 13:07:31 | | 3 | Tommy | NULL | US | 1030 | 2023-02-16 14:07:37 | | 4 | john Doe | 9100021321 | UAE | 100 | 2023-02-14 05:07:46 | | 5 | Peter Quill | 9100021334 | Russia | 200 | 2023-02-22 12:07:37 | | 6 | Peter Parker | 9100021326 | Turkey | 1500 | 2023-02-16 18:26:32 | +----+--------------+------------+---------+--------+---------------------+
इसमें से suppose कीजिये अगर मुझे address
field update करना हुआ तो कुछ इस तरह से करूंगा।
UPDATE users SET address='India';
Output
Query OK, 5 rows affected (0.047 sec) Rows matched: 6 Changed: 5 Warnings: 0
Output में आप देख सकते हैं कि 5 rows affected दिख रहा है , क्योंकि एक address में तो पहले ही India था , इसलिए matched rows 6 लेकिन update 5 ही हुई हैं।
अगर आप फिर से सभी records fetch करोगे तो address
column की value हर जगह change हो गयी होगी।
जैसा कि just अभी पढ़ा कि आप किसी particular record को condition के bases भी update कर सकते हैं , तो id के bases पर कुछ इस तरह से update कर सकते हैं।
UPDATE users SET address='US' WHERE id=1;
Output
Query OK, 1 row affected (0.047 sec) Rows matched: 1 Changed: 1 Warnings: 0
record update हो गया , अगर आप id 1 का record देखेंगे तो address change हुआ मिलेगा।
SELECT id, name, address FROM users WHERE id=1;
Output
+----+------+---------+ | id | name | address | +----+------+---------+ | 1 | Tom | US | +----+------+---------+
आप चाहे तो एक साथ कई columns को update कर सकते हैं।
UPDATE users
SET
address = 'India',
mobileno='+91 9089908978'
WHERE id=6;
Output
Query OK, 1 row affected (0.047 sec) Rows matched: 1 Changed: 1 Warnings: 0
इसके अलावा अगर आप चाहे तो किसी particular string part को किसी new value से replace भी कर सकते हैं।
जैसे हमारी users table में record id 5 , 6 में user का नाम में Peter
है मैं इसे John
में से replace कुछ इस तरह से करूंगा।
UPDATE users
SET name = REPLACE(name,'Peter', 'John')
WHERE
id In (5,6);
Output
Query OK, 2 rows affected (0.049 sec) Rows matched: 2 Changed: 2 Warnings: 0
अब अगर आप id 5 , 6 के records select करेंगे उनके name change मिलेगें।
SELECT id, name FROM users WHERE id IN (5,6);
Output
+----+-------------+ | id | name | +----+-------------+ | 5 | John Quill | | 6 | John Parker | +----+-------------+
Update Statement के साथ आप need के according Limit , Order By , AND , OR , Join etc . भी use कर सकते हैं।
I Hope, आपको MySQL में Update Statement अच्छे से समझ आ गया होगा।