我有一个数据库,其中有一列是格鲁吉亚日期,如{YYYYMMDD}。我想有一个列(或3年,月,日)为Jalai日期。我可以很容易地编写和脚本使用python转换格鲁吉亚日期到Jalali。这是我用python写的:
import jdatetime as jdt
georgian = str(20170828)
def GtoJ(georgian):
jalai = jdt.GregorianToJalali(int(georgian[:4]),int(georgian[4:6]),int(georgian[-2:]))
# print('{}{:02}{:02}'.format(jalai.jyear,jalai.jmonth,jalai.jday))
return '{}{:02}{:02}'.format(jalai.jyear,jalai.jmonth,jalai.jday)
print(GtoJ(georgian)) ##13960606
假设我在postgresql数据库中创建了一个名为jdate的空列,使用sqlalchemy或任何其他sql引擎,我用以下代码更新每一行:
for date in history_tabel_date:
jdate = GtoJ(str(date))
con.execute('update history_tale jdate= value_jdate where date = {}'.format(date))
写一个做同样事情的sql函数的方法是什么
一般来说,在sql之外编写脚本是一个好主意,还是sql函数更好,更值得推荐
当使用数据库作为脚本的资源时,由于创建连接、传输数据等原因,当脚本和数据库来回运行时会出现瓶颈。因此,您应该考虑在两端执行大部分数据处理并减少查询数(
INSERTS
,UPDATES
,DELETES
)到最小值如果要在数据库端执行函数,可以考虑使用PL/Python,这是一个
相关问题 更多 >
编程相关推荐