आप update ... from
. का भी उपयोग कर सकते हैं सिंटैक्स और मैपिंग टेबल का उपयोग करें। यदि आप एक से अधिक कॉलम अपडेट करना चाहते हैं, तो यह अधिक सामान्यीकरण योग्य है:
update test as t set
column_a = c.column_a
from (values
('123', 1),
('345', 2)
) as c(column_b, column_a)
where c.column_b = t.column_b;
आप जितने चाहें उतने कॉलम जोड़ सकते हैं:
update test as t set
column_a = c.column_a,
column_c = c.column_c
from (values
('123', 1, '---'),
('345', 2, '+++')
) as c(column_b, column_a, column_c)
where c.column_b = t.column_b;
sql fiddle डेमो