Копировать строки SQL Server в новые строки на основе предложения Where - PullRequest
0 голосов
/ 04 сентября 2018

Я использую SQL Server 2008. Предположим, у меня есть таблица с такой структурой (ниже обозначены имена / типы столбцов):

ID - Int (Primary Key) [This is set to autoincrement]
X - varchar(MAX)
Y - varchar(MAX)
Z - varchar(MAX)

Я пытаюсь создать общий запрос, основанный на значении одного из столбцов, который может копировать значения существующих записей в новую запись, изменять некоторые значения столбцов и естественным образом увеличивать идентификатор. Рассмотрим следующий псевдокод (я не мог придумать, как это перебрать иначе: /):

1)

SELECT * 
FROM TABLE 
WHERE X = "Hello" 
INTO TEMPTABLE

2)

COPY RESULTS 
FROM TEMPTABLE 
INTO TABLE 
SET X = "HI HI HI" AND SET Y "HI!"

Ожидаемый результат из вышеперечисленного будет набором результатов из 1) подачи создания записи в 2). Значение Z должно быть естественно скопировано, поскольку мы не устанавливаем его иначе.

1 Ответ

0 голосов
/ 04 сентября 2018
INSERT INTO foobar (x, y, z)
SELECT 'HI HI HI', 'HI!', z FROM foobar WHERE x = 'Hello'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...