2012-07-20 16 views
5

कहो भीतर चयन पर कुछ स्पष्टीकरण की आवश्यकता है, अगर मैं निम्नलिखित टी SQL विवरण (एसक्यूएल सर्वर 2008 पर चलाने के लिए डिज़ाइन) है:अद्यतन टी SQL विवरण

UPDATE tbl 
SET col1 = (
    SELECT MAX(col1) FROM tbl AS t1 WHERE t1.type = tbl.type 
); 

वास्तव में किस प्रकार करता है इस मामले में चयन काम :

  1. यह

  2. यह tbl से चयन करता है के रूप में यह पहले था अद्यतन रिकॉर्ड को अपडेट करना शुरू किया प्रत्येक अद्यतन के परिणाम, या ध्यान में रखते हुए चयन करता है।

क्या कोई मेरे लिए यह स्पष्ट कर सकता है?

उत्तर

4

2! आपका सबक्वायरी SELECT अद्यतन के अनुसार निर्धारित करता है जैसा कि अद्यतन किसी भी बदलाव करता है।

+0

मैंने इसे लाइव उदाहरण पर परीक्षण किया। और ... तुम सही हो। धन्यवाद। – ahmd0

-2

यह है 1

1. यह खाते में प्रत्येक अद्यतन के परिणाम लेने चुनता है या

+0

आपके त्वरित उत्तर के लिए धन्यवाद। – ahmd0

+0

पकड़ो ... तो क्या यह 1 या 2 है :) क्या किसी के पास इस पर दस्तावेज़ों का कोई संदर्भ है? – ahmd0

+0

इसे आज़माएं और देखें, @ ahmd0। कोई दस्तावेज़ की आवश्यकता नहीं है। – ErikE

संबंधित मुद्दे