Це питання наближається до того, що мені потрібно, але мій сценарій дещо інший. Таблиця джерела та таблиця призначення однакові, а первинний ключ є унікальним ідентифікатором (орієнтиром). Коли я спробую це:
insert into MyTable
select * from MyTable where uniqueId = @Id;
Я очевидно отримую порушення обмеження первинного ключа, оскільки я намагаюся скопіювати первинний ключ. Насправді я взагалі не хочу копіювати первинний ключ. Швидше, я хочу створити нову. Крім того, я хотів би вибірково скопіювати певні поля, а інші залишити нульовими. Щоб зробити складнішими питання, мені потрібно взяти первинний ключ оригінального запису та вставити його в інше поле копії (поле PreviousId).
Я впевнений, що для цього є просте рішення, я просто не знаю достатньо TSQL, щоб знати, що це таке.