Python 将SQLite查询结果插入到另一个表中
我在将SQLite查询的结果追加到另一个表中时遇到问题。最后,我还想向查询结果添加一个数据点,并将其附加到新表中。以下是我迄今为止的尝试:Python 将SQLite查询结果插入到另一个表中,python,sqlite,insert,Python,Sqlite,Insert,我在将SQLite查询的结果追加到另一个表中时遇到问题。最后,我还想向查询结果添加一个数据点,并将其附加到新表中。以下是我迄今为止的尝试: import datetime import sqlite3 createDb = sqlite3.connect(r'C:\test') queryCurs = createDb.cursor() def qryblock(): return queryCurs.execute('''SELECT DB.R, DB.T, D
import datetime
import sqlite3
createDb = sqlite3.connect(r'C:\test')
queryCurs = createDb.cursor()
def qryblock():
return queryCurs.execute('''SELECT DB.R,
DB.T,
DB.A
FROM DB.SAT SAT,
DB.I I
WHERE A.RECOR = T.RECOR AND
((A.DF Is Not Null) AND
(A.PF Is Null) OR
(A.DF Is Null) AND
(A.PF Is Null) AND
(A.P<{d '1999-09-09'}))''')
def addmonth(current_line):
queryCurs.execute('''INSERT INTO monthview (record, route, date, amt)
VALUES (?,?,?,?)''',(record, route, date, amt))
def main():
current_date = datetime.datetime.today()
todayslist = []
if current_date == firstbusinessday():
monthsblock = qryblock()
for line in monthsblock:
for datapoint in line:
todayslist.append(datapoint)
todayslist.append(current_date)
addmonth(todayslist)
todayslist = []
createDb.commit()
else:
pass
if __name__ == '__main__':
main()
导入日期时间
导入sqlite3
createDb=sqlite3.connect(r'C:\test')
queryCurs=createDb.cursor()
def qryblock():
返回queryCurs.execute(“”)选择DB.R,
DB.T,,
DB.A
来自DB.SAT,
DB.I.I
其中A.RECOR=T.RECOR和
((A.DF不为空)和
(A.PF为空)或
(A.DF为空)并且
(A.PF为空)且
(A.p此代码不是有效的Python(缩进错误,您调用qryblock(date)
时没有任何参数)。这使我很难完全理解这个问题。我对空格表示歉意。我当时正在使用prod代码,我不得不手动更改浏览器中的所有内容以隐藏我想要隐藏的所有内容。我还删除了代码中不必要的参数。插入表(A、B、C、D)有什么问题选择R,T,A,I FROM…WHERE…?太棒了。我不知道你可以插入一个完整的SELECT语句。如果我需要在结果集中的每一行添加一个值,我会引用SELECT语句中的变量吗?所以基本上我想插入表(A,B,C,D,E)(我希望E是日期)但是我的SELECT语句只有“SELECTR,T,A,I From…”