तालिका की पंक्तियों को व्यक्तिगत रूप से अपडेट करने के लिए आपको प्राथमिक कुंजी (या एक अद्वितीय कॉलम) की आवश्यकता होती है। ऐसे कॉलम के अभाव में आप हिडन कॉलम ctid
. का इस्तेमाल कर सकते हैं जो परिभाषा के अनुसार अद्वितीय है, उदाहरण:
update foo f
set ver = rn
from (
select ctid, row_number() over (order by ctid) as rn
from foo
) s
where f.ctid = s.ctid