Don't see a reason why you would want to do this, but okay... Create the three tables (for example A, B and C) and select the data into it.
INSERT INTO A (id, name, code) FROM SELECT id, name, code FROM Table1 WHERE Id IN (3, 5)
INSERT INTO B (id, name, code) FROM SELECT id, name, code FROM Table1 WHERE Id IN (2, 6)
etc...
I assume the code can be lost after the data is separated because the new table will add the meaning of that. To be more clear: All records that are moved to table A are implied to have code 14, records in table B 26 and table C have 14 en 26.
To fill the first two tables would be easy but because there are records that have both code 14 and 26 you need to get them out of the way first. To select those you need every record with code 14 and 26, group them by id and then only keep records that has a count of two (because that means it has both code 14 and 26)
The select would become something like this:
SELECT id, name FROM Table1
WHERE code in (14, 26)
GROUP BY id
HAVING COUNT(id) = 2;
You need to insert those records into table C and after that delete them from Table1 (or whatever the name of the table is). After that you only need to separate the records with either code 14 or 26 from it.
Good luck!