← Back to MySQL Course | Chapter 7: Updating & Deleting | Lesson 2 of 4

UPDATE Multiple Columns

एक साथ कई columns update करना shelf की एक visit में same product पर एक price tag और एक stock count दोनों fix करने जैसा है।
Syntax
sql
UPDATE table_name
SET column1 = value1,
    column2 = value2
WHERE condition;

Multiple Column Updates का Introduction

आप एक single UPDATE statement में एक से ज़्यादा column update कर सकते हैं, जैसे किसी product की price और stock साथ बदलना। हर column-value pair को एक comma से separate करें। यह same rows के against कई अलग queries चलाने से तेज़ और cleaner है।

उदाहरण: Introduction to Multiple Column Updates

sql
UPDATE products SET price = 29.99, stock = 100 WHERE id = 1;

Strings और Numbers को साथ Update करना

MySQL आपको एक statement के अंदर एक साथ अलग-अलग data types update करने देता है। आप text fields, numbers, और dates को एक command में बदल सकते हैं। बस यह सुनिश्चित करें कि नई values column types से match करें, नहीं तो MySQL एक implicit (और कभी-कभी lossy) conversion की कोशिश करेगा।

उदाहरण: Updating Strings and Numbers Together

sql
UPDATE users SET name = 'Amit Kumar', age = 31, signup_date = '2024-01-01' WHERE id = 1;

कई Columns पर Expressions इस्तेमाल करना

आप एक साथ कई columns पर mathematical expressions इस्तेमाल कर सकते हैं, जैसे एक total और एक tax amount को साथ recalculate करना। हर column अपने defined formula के according update होगा। updates एक single atomic step में safely होते हैं, इसलिए कोई दूसरी query एक half-updated row नहीं देखती।

उदाहरण: Using Expressions on Multiple Columns

sql
UPDATE orders SET total = total + 10, tax = tax + 1 WHERE id = 1;

CASE के साथ Conditional Logic

आप प्रति row अलग logic apply करने के लिए अपनी multi-column updates के अंदर CASE statements इस्तेमाल कर सकते हैं। यह आपको conditions के आधार पर अलग columns पर अलग rules apply करने देता है, जैसे order total के आधार पर एक discount tier देना।

यह complex business logic के लिए highly efficient है जिसे अन्यथा कई अलग UPDATE statements चाहिए होते।

उदाहरण: Conditional Logic with CASE

sql
UPDATE products
SET category = CASE WHEN price > 100 THEN 'premium' ELSE 'standard' END;

Safe Multiple Updates के लिए Best Practices

कई fields update करने से पहले हमेशा अपना WHERE clause verify करें, क्योंकि यहाँ एक गलती आपकी एक साथ set की जा रही हर column को affect करती है। पहले same WHERE clause के साथ एक SELECT query चलाना एक safe practice है। यह ensure करता है कि change commit करने से पहले आप सिर्फ intended rows modify करें।

उदाहरण: Best Practices for Safe Multiple Updates

sql
SELECT * FROM products WHERE id = 1; -- preview before updating
UPDATE products SET price = 29.99, stock = 100 WHERE id = 1;
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
आम गलतियां
  1. columns को commas के बजाय AND से separate करना, जैसे SET price = 1 AND stock = 2, जो एक boolean expression set करता है।
  2. यह भूल जाना कि MySQL assignments को left से right evaluate करता है, ताकि एक बाद वाला column पहले से बदली गई value इस्तेमाल कर सके।
  3. WHERE भूल जाना और सारी rows बदल देना।
🔒

Chapter Quiz — Complete all 4 topics to unlock

0/4 topics done

Complete these topics first:

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.