У меня есть временная таблица A, имеющая 2 столбца col1: ID col2: значение, сгенерированное с использованием XML. Мне нужно обновить столбцы в таблице B, соответствующие столбцу1: идентификатор таблицы A со значениями, присутствующими в col2: значение таблицы A. ПРИМЕЧАНИЕ. Необходимо обновлять только определенные столбцы и не все в таблице B.обновление значений в одной таблице из другой таблицы с использованием DYNAMIC SQL в MSSQL
таблица A
+----+-------+
| ID | Value |
+----+-------+
| 1 | 533 |
| 5 | 34 |
| 6 | 56 |
+----+-------+
таблицу В
+-----+---+---+---+----+----+---+
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
+-----+---+---+---+----+----+---+
| 533 | | | | 34 | 56 | |
+-----+---+---+---+----+----+---+
declare dynsql varchar(4000) = ' update table B set....... '
Зачем вам нужен динамический SQL? Кроме того, таблица B содержит только одну строку? Если нет, то откуда вы знаете, какую строку обновить? –
Аналогично тому, что сказал @Martin Smith, содержит ли таблица A только один набор значений? Если нет, то как вы знаете, какой набор значений таблицы A обновляет [какая строка] таблицы B? –
Мартин, таблица B всегда будет содержать одну строку с примерно 140 столбцами, из которых должны быть обновлены только те столбцы, имя которых совпадает с идентификатором в таблице A. – user3758593