上下文: 我目前正在使用psycopg2在Python中构建一个自定义导入脚本,该脚本将csv文件中的值插入到postgres数据库中。但是,CSV为我提供了一个需要改进的值。
问题:在下面的示例中,您可以看到我想要的: 我想要15位数字中的最后5位数字。
mytestdb=# select * from testtable;
uid | first_name | last_name | age | 15-digit | last_5_digits
-----+------------+-----------+-----+----------------------------+-----------------
1 | John | Doe | 42 | 99999999912345 | 12345
我知道我可以通过首先插入提供的值(first_name,last_name,age和15位数字)然后使用RIGHT(15-digit,5)和UPDATE语句填充last_5_digits字段来完成此操作。
但是,我更愿意在该行的初始INSERT期间执行此操作。这将大大降低数据库上的事务量。
有人可以帮我完成这项工作吗?