Puedes hacer un insert de un select...
Código Delphi
[-]
INSERT INTO TABLA_DESTINO (CAMPO1, CAMPO2, CAMPO3)
SELECT CAMPO1, CAMPO2, CAMPO3
FROM TABLA_ORIGEN
WHERE CAMPOX = :Parametro
Siquieres que no queden estos datos en la tabla orignen, en la misma transacción podrías borrar los registros del select utilizando un DELETE.
Saludos!