মাইএসকিউএল একাধিক আপডেট

আমি জানি যে আপনি একই সময়ে একাধিক সারি সন্নিবেশ করতে পারেন, এক সময়ে একাধিক সারি আপডেট করার উপায় (যেমন, এক প্রশ্নের মধ্যে) মাইএসকিউএল মধ্যে?

সম্পাদনা: উদাহরণস্বরূপ আমি নিম্নলিখিত আছে

Name   id  Col1  Col2
Row1   1    6     1
Row2   2    2     3
Row3   3    9     5
Row4   4    16    8

আমি নিম্নলিখিত সমস্ত আপডেটগুলি এক প্রশ্নে একত্রিত করতে চাই

UPDATE table SET Col1 = 1 WHERE id = 1;
UPDATE table SET Col1 = 2 WHERE id = 2;
UPDATE table SET Col2 = 3 WHERE id = 3;
UPDATE table SET Col1 = 10 WHERE id = 4;
UPDATE table SET Col2 = 12 WHERE id = 4;
0
ro fr hi

5 উত্তর

আপনি আপডেটগুলিতে যোগদান ব্যবহার করতে আগ্রহী হতে পারে, যা পাশাপাশি সম্ভব।

Update someTable Set someValue = 4 From someTable s Inner Join anotherTable a on s.id = a.id Where a.id = 4
-- Only updates someValue in someTable who has a foreign key on anotherTable with a value of 4.

সম্পাদনা করুন: আপনি যে মানগুলি আপডেট করছেন তা ডাটাবেসে অন্য কোথাও থেকে আসে না, আপনাকে একাধিক আপডেটের প্রশ্নগুলি প্রকাশ করতে হবে।

0
যোগ
UPDATE table1, table2 SET table1.col1='value', table2.col1='value' WHERE table1.col3='567' AND table2.col6='567'

এই জন্য আবার কাজ করা উচিত।

একাধিক টেবিলের জন্য MySQL ম্যানুয়াল তে একটি রেফারেন্স আছে।

0
যোগ
UPDATE tableName SET col1='000' WHERE id='3' OR id='5'

এটা আপনি কি খুঁজছেন খুঁজছেন অর্জন করা উচিত। শুধু আরো আইডি এর যোগ করুন। আমি এটা পরীক্ষা করেছে।

0
যোগ

হ্যাঁ, এটা সম্ভব - আপনি INSERT ব্যবহার করতে পারেন ... ডিপ্লিকেশন কী আপডেটের উপর।

আপনার উদাহরণ ব্যবহার করে:

INSERT INTO table (id,Col1,Col2) VALUES (1,1,1),(2,2,3),(3,9,3),(4,10,12)
ON DUPLICATE KEY UPDATE Col1=VALUES(Col1),Col2=VALUES(Col2);
0
যোগ
যদি কোনও অনুরূপ না হয় তবে আমি যে সারি ঢোকাতে চাই না। আইডি কি করবেন? কারণ আমি আইডি এর সাথে টেবিলের রক্ষণাবেক্ষণ করে অন্য কোন সাইট থেকে তথ্য আদান প্রদান করছি। আমি যে আইডি সম্মান সঙ্গে মান সন্নিবেশ করছি যদি সাইটটি নতুন রেকর্ড থাকে তবে আমি কেবল অন্যান্য আইডিয়াগুলি বাদ দিয়ে শেষ করবো। যদি এবং শুধুমাত্র আইডি জন্য একটি এন্ট্রি আছে, তাহলে এটি অন্যথায় আপডেট করা উচিত এটি এড়িয়ে যেতে হবে। আমি এখন কি করব?
যোগ লেখক Jayapal Chandran, উৎস
তাই এটি স্কিপ নল মধ্যে সন্নিবেশ হিসাবে বা অনুরূপ আপডেট খালি ছেড়ে না থাকলে ... তাহলে এটি চমৎকার হবে।
যোগ লেখক Jayapal Chandran, উৎস

নিম্নোক্ত এক সারির সমস্ত সারিগুলি আপডেট করা হবে

Update Table Set
Column1 = 'New Value'

পরেরটি এমন সব সারিগুলি আপডেট করবে যেখানে কলাম 2 এর মান 5 এর চেয়ে বেশি

Update Table Set
Column1 = 'New Value'
Where
Column2 > 5

একাধিক সারণী আপডেট করার সমস্ত আনকুটেনেক এর উদাহরণ রয়েছে

UPDATE table1, table2 SET
table1.col1 = 'value',
table2.col1 = 'value'
WHERE
table1.col3 = '567'
AND table2.col6='567'
0
যোগ