有没有办法确定Postgres从csv文件填充表格所花费的时间。我尝试使用'time'命令,但它没有用。
time copy TABLE_NAME from /home/ankit/Documents/file.csv delimiter ',' csv header ;
错误是:
ERROR: syntax error at or near "time
“
我正在使用Ubuntu 16.04
答案 0 :(得分:4)
这取决于您如何向Postgres提交查询。如果您在shell中使用psql命令行客户端,则可以在其之前添加time命令。例如,它将类似于以下内容:
time psql -c "copy TABLE_NAME from /home/ankit/Documents/file.csv delimiter ',' csv header ;"
您可能还需要在命令中添加连接参数。
如果你使用psql的另一种方法是使用以下命令,psql将打印每个查询花费的时间:
\timing
答案 1 :(得分:2)
应该有"创建"类型"没有时区的时间戳"在表中,您还可以在列定义屏幕中将默认值指定为now()。
然后,每个记录将使用创建的时间戳进行分配,无论是从csv加载还是通过任何其他方式创建。
或者在SQL中:
ALTER TABLE mytable ADD COLUMN created TIMESTAMP;
ALTER TABLE mytable ALTER COLUMN created SET DEFAULT now();