我有一个包含不同类型产品编号的表格:
Date - Artsup - ArtTest - ArtCombo
-------------------------------
01-01-23 - S1 - T1 - S1T1
01-01-23 - S2 - T2 - S2T2
现在我想在同一个表中插入一条新记录,但首先我想检查一下是否有可用的“ArtCombo”。
所以现在我先读一下这个表:
cur.execute('SELECT ArtCombo from table1 where ArtTest = %s and Date BETWEEN CURDATE() - INTERVAL 1 DAY AND CURDATE()')
val = (varArtTest)
varArtCombo = value-from-select-query
这样我就得到了ArtCombo值(如果有的话)。现在使用这个ArtCombo值做一个新的插入,如下所示
sql = "INSERT INTO table1 (Date, ArtSup, ArtTest, ArtCombo) VALUES (%s, %s, %s, %s)"
val = (datetime.now(tz=None), varArtSup, varArtTest, varArtCombo)
这是可行的,但它不是更容易或更快,使这一个单一的查询?如果是这样,如何实现?
1条答案
按热度按时间qoefvg9y1#
溶液
我选择了一种不同的方法来处理这个问题。在两个Pandas Dataframe 中转换/捕捉我的初始数据。对帧进行合并并检查“left_only”。这给了我工作的区别:
现在我有了df 1中可用而数据库中不可用的项目,这是我的目标。