Manchmal ist es notwendig bestehende Datensätze zu modifizieren und in einer neuen Tabelle abzulegen. Folgende SQL Insert Methode kann dabei angewendet werden.
DECLARE
@new_date DATETIME
SET
@new_date = GETDATE();
INSERT INTO
new_table (new_date, new_title, new_description)
SELECT
-- new value
@new_date,
-- new content
concat(old_title, " - ", old_subtitle) new_title,
concat(old_teaser, ": ", old_text) new_description
FROM
old_table;
Datensätzt in der Tabelle "old_table":
-- Result:
-- +------------------------------------------------------------------------+
-- | old_title | old_subtitle | old_teaser | old_text |
-- +------------------------------------------------------------------------+
-- | title 1 | subtitle 1 | teaser 1 | text 1 |
-- | title 2 | subtitle 2 | teaser 2 | text 2 |
-- | title 3 | subtitle 3 | teaser 3 | text 3 |
-- +------------------------------------------------------------------------+
Nach der erfolgreichen Ausführung des SQL Insert, sollten die migrierten Datensätze in der Tabelle "new_table" wie folgt aussehen:
-- Result:
-- +----------------------------------------------------------------------+
-- | new_date | new_title | new_description |
-- +----------------------------------------------------------------------+
-- | 9999-12-31 23:59:59 | title 1 - subtitle 1 | teaser 1: text 1 |
-- | 9999-12-31 23:59:59 | title 2 - subtitle 2 | teaser 2: text 2 |
-- | 9999-12-31 23:59:59 | title 3 - subtitle 3 | teaser 3: text 3 |
-- +----------------------------------------------------------------------+