Позвольте мне показать на примере, как обновить.Сначала мы должны создать таблицы:
CREATE TABLE ObjectData
(
ID INT,
CollID INT,
Data VARCHAR(50)
)
CREATE TABLE ColumnSet
(
ColumnID INT,
ColumnName VARCHAR(50)
)
Затем вставить данные:
INSERT INTO ObjectData
(
ID,
CollID,
Data
)
VALUES
( 113, -- ID - int
1, -- CollID - int
'1' -- Data - varchar(50)
)
, (114, 5, '')
, (115, 10015, 'Mohamed')
, (116, 20026, 'Abdulghani')
INSERT INTO ColumnSet
(
ColumnID,
ColumnName
)
VALUES
( 1, -- ColumnID - int
'ID' -- ColumnName - varchar(50)
)
, (5, 'EmployeeID')
, (10015, 'FirsName')
И последний шаг - это обновление, где вы должны записать, какие строки должны быть обновлены с помощью WHERE
оператор:
UPDATE od
SET od.Data = 'Hey!'
FROM ObjectData od
INNER JOIN ColumnSet cs ON cs.ColumnID =od.CollID
--WHERE OD.DATA IN ('1', '10')
WHERE OD.CollID IN (1, 5)
Вы можете написать в условии WHERE
любое условие, чтобы выбрать строку, которая будет обновлена.
--Check our update statements:
SELECT
*
FROM ObjectData od
INNER JOIN #ColumnSet cs ON cs.ColumnID =od.CollID
WHERE OD.DATA IN ('1', '10')