Tôi có một cấu trúc bảng đơn giản như thế này:
Bảng tempData
╔══════════╦═══════╗
║ NAME ║ MARKS ║
╠══════════╬═══════╣
║ Narendra ║ 80 ║
║ Ravi ║ 85 ║
║ Sanjay ║ 90 ║
╚══════════╩═══════╝
Và tôi cũng có một tên bảng khác là tempDataView như thế này
╔══════════╦═══════╗
║ NAME ║ MARKS ║
╠══════════╬═══════╣
║ Narendra ║ ║
║ Narendra ║ ║
║ Narendra ║ ║
║ Narendra ║ ║
║ Ravi ║ ║
║ Ravi ║ ║
║ Sanjay ║ ║
╚══════════╩═══════╝
Tôi muốn cập nhật bảng tempDataView , bằng cách đặt Marks theo tempDataView - Tên so với tempData - Tên
Vâng, hãy để tôi chỉ cho bạn những gì tôi đã thử, tôi đã cố gắng giải quyết vấn đề này bằng cách sử dụng Con trỏ và nó đã được giải quyết hoàn hảo, nhưng tôi đang tìm cách giải quyết bằng cách sử dụng Truy vấn con
Nó đây:
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
Thực ra nó giống như bài tập về nhà để tôi giải nó bằng cách sử dụng Truy vấn con.