У мене є така проста структура таблиці:
Таблиця tempData
╔══════════╦═══════╗
║ NAME ║ MARKS ║
╠══════════╬═══════╣
║ Narendra ║ 80 ║
║ Ravi ║ 85 ║
║ Sanjay ║ 90 ║
╚══════════╩═══════╝
І у мене також є інші назви таблиць як tempDataView, як це
╔══════════╦═══════╗
║ NAME ║ MARKS ║
╠══════════╬═══════╣
║ Narendra ║ ║
║ Narendra ║ ║
║ Narendra ║ ║
║ Narendra ║ ║
║ Ravi ║ ║
║ Ravi ║ ║
║ Sanjay ║ ║
╚══════════╩═══════╝
Я хочу оновити таблицю tempDataView , встановивши Позначки відповідно до tempDataView - Name порівняно з tempData - Name
Так, дозвольте мені показати вам, що я пробував, я намагався вирішити це за допомогою курсору і його вирішено ідеально, але я знаходжу спосіб вирішити це за допомогою підзапиту
Ось:
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
Насправді для мене це як домашнє завдання, щоб вирішити його за допомогою підзапиту.