1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
my $table = 'timestampt'; $dbh->do( "CREATE TABLE IF NOT EXISTS $table ( Id INT, epoch_micro BIGINT, epoch_milli BIGINT, epoch_s BIGINT )" ); my $sth = $dbh->prepare( "INSERT INTO $table ( Id, epoch_micro, epoch_milli, epoch_s ) VALUES ( ?, ?, ?, ? )" ); my $values = [ [ 1, 1387528449510009, 1387528449510, 1387528449 ], [ 2, 1387528449518239, 1387528449518, 1387528449 ], [ 3, 1387529362307977, 1387529362307, 1387529362 ], ]; for my $row ( @$values ) { $sth->execute( @$row ); } $sth = $dbh->prepare( "SELECT TO_TIMESTAMP( extract( epoch epoch_milli ))::date FROM $table" ); $sth->execute(); $sth->dump_results;
1
2
DBD::Pg::st execute failed: FEHLER: Syntaxfehler bei "epoch_milli"
ZEILE 1: SELECT TO_TIMESTAMP( extract( epoch epoch_milli ))::date FRO...
2014-03-28T10:02:24 KuerbisCode (perl): (dl )$sth = $dbh->prepare( "SELECT TO_TIMESTAMP( extract( epoch epoch_milli ))::date FROM $table" );
EXTRACT(field FROM source)
1
2
3
4
5
DBD::Pg::st execute failed: FEHLER: Funktion pg_catalog.date_part(unknown, bigint) existiert nicht
ZEILE 1: SELECT TO_TIMESTAMP( extract( epoch FROM epoch_milli ))::dat...
^
TIP: Keine Funktion stimmt mit dem angegebenen Namen und den Argumenttypen überein.
Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.
QuoteTO_TIMESTAMP( extract( epoch epoch_milli ))::date
DATE(EXTRACT(epoch FROM TO_TIMESTAMP(epoch_milli)))
1
2
3
4
5
DBD::Pg::st execute failed: FEHLER: Funktion date(double precision) existiert nicht
ZEILE 1: SELECT DATE(EXTRACT(epoch FROM TO_TIMESTAMP(epoch_milli))) F...
^
TIP: Keine Funktion stimmt mit dem angegebenen Namen und den Argumenttypen überein.
Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.