我有一张桌子,上面有客户/电话/城市/州/邮编等。 偶尔,我将从.csv文件导入信息,有时邮政编码格式如下:xxxxx-xxxx我只需要它是一般的5位邮政编码。
如何删除最后5个字符,而不必逐个单元格地从Excel中删除(这就是我现在正在做的事情)?
由于
编辑:这是我在克雷格的建议之后使用的,它起作用了。但是,有些zip条目是加拿大邮政编码,通常它们的格式为x1x-x2x。运行此操作将删除该字段中的最后一个字符。我该如何解决这个问题?
答案 0 :(得分:3)
你需要做以下三个想法中的一个:
COPY
进入TEMPORARY
或UNLOGGED
表,然后执行INSERT INTO real_table SELECT ...
,使用适当的substring(...)
电话转换数据;或csv
模块和psycopg2的copy_from
一起使用。这样的insert into ... select
可能如下所示:
INSERT INTO real_table(col1, col2, zip)
SELECT
col1,
col2,
substring(zip from 1 for 5)
FROM temp_table;