Re: raw data into table process
От | Russell Smith |
---|---|
Тема | Re: raw data into table process |
Дата | |
Msg-id | 46CC1C9D.4080304@pws.com.au обсуждение исходный текст |
Ответ на | raw data into table process (novice <user.postgresql@gmail.com>) |
Список | pgsql-general |
novice wrote: > I am trying to record the following entries into a table. I'm curious > to know if there's an efficient/effective way of doing this? This > entries come from an ancient datalogger (note: separated by space and > uses YY/MM/DD format to record date) > > Plain file sample.dat > > 3665 OK BS 07/08/16 07:28 > 3665 CC BS 07/08/16 07:29 > 3665 CS BS 07/08/16 07:29 > 3665 CS BS 07/08/16 07:29 > 4532 OK BS 07/08/16 07:34 > 4004 OK BS 07/08/16 07:51 > 3991 OK BS 07/08/16 07:54 > > > This is the table that I'm adding the entries to > > CREATE TABLE maintenance > ( > maintenance_id SERIAL PRIMARY KEY, > meter_id integer, > status text, > inspector text, > inspection_date timestamp with time zone, > ) > If your on unix, why not use those tools first? awk '{print $1 "\t" $2 "\t" $3 "\t" $4 " " $5}' sample.dat > sample.tab -- Begin SQL script CREATE TEMP TABLE maintenance_tmp ( meter_id integer, status text, inspector text, inspection_date timestamp with time zone ); SET datestyle='ymd'; \copy maintenance_tmp FROM sample.tab INSERT INTO maintenance (meter_id, status, inspector, inspection_date) SELECT DISTINCT meter_id, status, inspector, inspection_date FROM maintenance_tmp ORDER BY inpsection_date; ANALYZE maintenance; -- End SQL Script [snip] > Any thoughts and suggestions welcome. > > ---------------------------(end of broadcast)--------------------------- > TIP 6: explain analyze is your friend >
В списке pgsql-general по дате отправления: