我正在将一些批量导入的歌曲数据导入sqlite3数据库。原始数据包含重复项(以及大量数据),因此在导入时,如果歌曲/艺术家不在数据库中,我希望能够添加一行,否则会增加play_count
列。
有没有办法用单个SQLite语句执行此操作,以便我可以使用sqlite3
的{{1}}函数,而不是循环数据集和执行多个操作的效率较低的方法executemany()
陈述?
例如,如果我有以下原始歌曲数据:
execute()
如果它不存在,有没有办法将它添加到下表中,如果有,则增加[('This Song', 'This Artist'), ('Different Song', 'Different Artist')]
?
play_count
原始数据集非常大,并且将分批完成,因此我不能在python端进行重复处理。