Oracle: copier une ligne en mettant à jour un champ

Note: je suis en posant la question, je veux une réponse. Je sais que cette question signifie que la base de données est mal. Je vais donc voter contre toutes les réponses qui vous suggérons de modifier la façon dont la table est mis en place.

J'ai besoin de dupliquer un tas de lignes, tandis que de changer une valeur.

name   col1 col2
dave   a    nil
sue    b    nil
sam    c    5

doit devenir:

name   col1 col2
dave   a    nil
dave   a    a
sue    b    nil
sue    b    a
same   c    5

C'est à dire pour toutes les entrées dans cette table où col2 is nullcréer une nouvelle entrée dans la table où name et col1 sont copiés, et col2 est a.

source d'informationauteur David Oneill