मेरे पास इस तरह की एक सरल तालिका संरचना है:
तालिका अस्थायी
╔══════════╦═══════╗
║ NAME ║ MARKS ║
╠══════════╬═══════╣
║ Narendra ║ 80 ║
║ Ravi ║ 85 ║
║ Sanjay ║ 90 ║
╚══════════╩═══════╝
और मेरे पास एक और टेबल के नाम भी हैं जैसे कि tempDataView
╔══════════╦═══════╗
║ NAME ║ MARKS ║
╠══════════╬═══════╣
║ Narendra ║ ║
║ Narendra ║ ║
║ Narendra ║ ║
║ Narendra ║ ║
║ Ravi ║ ║
║ Ravi ║ ║
║ Sanjay ║ ║
╚══════════╩═══════╝
मैं तालिका को अपडेट करना चाहते tempDataView , की स्थापना करके मार्क्स के अनुसार tempDataView - नाम के साथ तुलना में tempData - नाम
हां मुझे आपको दिखाने दें कि मैंने क्या प्रयास किया, मैंने इसे कर्सर का उपयोग करके हल करने की कोशिश की और इसका पूरी तरह से हल किया, लेकिन मैं इसे सबक्वेरी का उपयोग करके हल करने का तरीका ढूंढ रहा हूं
यह रहा:
Declare @name varchar(50),@marks varchar(50)
Declare @cursorInsert CURSOR
set @cursorInsert = CURSOR FOR
Select name,marks from tempData
OPEN @cursorInsert
FETCH NEXT FROM @cursorInsert
into @name,@marks
WHILE @@FETCH_STATUS = 0
BEGIN
UPDATE tempDataView set marks = @marks where name = @name
FETCH NEXT FROM @cursorInsert
INTO @name,@marks
END
CLOSE @cursorInsert
DEALLOCATE @cursorInsert
वास्तव में यह मेरे लिए होमवर्क की तरह है कि इसे सबकुरी का उपयोग करके हल किया जाए।