Spalte aus Timestamp und String zusammenführen

Hey All,
ich habe eine alte Tabelle in dem das Datum in einem Timestamp und die Zeit in einem Char(5) gespeichert sind.
Nun möchte Datum und Zeit in einer neuen Tabelle natürlich nur in einem Timestamp speichern.

DROP TABLE IF EXISTS old; 
CREATE TABLE old ( start TIMESTAMP, startTime CHAR(5));
INSERT INTO old VALUES ( '2015-09-13'::TIMESTAMP, '12:43' );
INSERT INTO old VALUES ( '2018-12-31'::TIMESTAMP, '23:59' );
--SELECT * FROM old;
DROP TABLE IF EXISTS new; 
CREATE TABLE new ( start TIMESTAMP );	
INSERT INTO new (start) (SELECT start FROM old );--!Hier muss die Uhrzeit addiert werden! 
/* So soll es aussehen
INSERT INTO new (start) (SELECT (date '2015-09-13' + interval '12 hour' + interval '43 minutes') AS start);
INSERT INTO new (start) (SELECT (date '2018-12-31' + interval '23 hour' + interval '59 minutes') AS start);
*/
SELECT * FROM new;

Wie kann ich das Problem lösen??
Muss ich eine pgSql Funktion erstellen??

VG Ronny

Ok, habe doch noch eine einfache Lösung gefunden:

INSERT INTO new (start) (SELECT (left(start::VARCHAR, 11)||startTime||':00')::TIMESTAMP AS start FROM old );

Ich biete

test=*# select current_date + '12:43'::interval;
      ?column?
---------------------
 2014-06-21 12:43:00
(1 row)

Du hättest also nur den String in INTERVAL casten brauchen und die 2 Spalten addieren.

Ja diese Lösung ist viel kürzer und performater.

Dank und Gruß

aus Rehfelde…