Split cells vertically on comma
I would not put the results in the same table.  I would make a new table and put the results in the new table.  The new table can use the same surrogate keys as the original.  It is a basic principle in database design that you never work on live data when doing development.  I also like inputs and outputs to be separate.  Sometimes you can damage the data subtly and if you have changed the input data rather than create a separate output table, these changes can be harder to detect and remedy.     

Other than that the code looks fine.