我有两个非常相似的问题。我正在使用Python处理SQL数据库。首先,我只想从SQL数据库中获取新数据(它会不断地更新新条目)。如果我已经选择了整行,我不想再选择它,只想获取新的数据。我现在拥有的代码是:
sql = ''' SELECT * FROM table WHERE time BETWEEN ? AND ? ''' #Select all columns of the database between the two timestamps
cur.execute(sql,[start_time,end_time])
然后,我想将其他数据插入到另一个数据库中,但不想添加已经存在的行。
query = 'INSERT INTO table_2 (col_1, col_2, col_3, col_4, col_5, col_6) VALUES(%s, %s, %s, %s, %s, %s)'
my_data = []
for row in data_df:
my_data.append(tuple(row))
cur.executemany(query, my_data)
如果尝试使用WHERE NOT EXISTS
功能,但我不确定语法,我不断得到错误。
1条答案
按热度按时间q43xntqr1#
我将尝试帮助您我的建议是在您的表中添加一个列整数,您可以将其命名为STATUS,并将其初始化为值0。然后您将添加一个“WHERE”条件,如下所示:“WHERE STATUS = 0”然后,您将在STATUS = 1时更新所选行(您应该在转换中执行此操作)如果您无法处理该表,没有问题=〉您可以创建一个临时表,其中包含您需要的所有数据和具有状态的列。我的意思是,您将在一个多一列的临时结构中转储所有数据。