0
我想通過JOIN執行SQL查詢,我可以將表別名傳播到生成的字典鍵中。例如,我可以有一個查詢sqlite3:在JOIN查詢中保留表名
query = """
SELECT t1.col1,t2.col1,t2.col2
FROM table1 t1 JOIN table2 t2
ON t1.col0=t2.col0
"""
,我想輸出來維持T1,T2的別名,因爲我有重複的列名(COL1)。我會運行
con = sqlite3.connect(dbpath, isolation_level=None, detect_types=sqlite3.PARSE_DECLTYPES)
def dict_factory(cursor, row):
d = {}
for idx,col in enumerate(cursor.description): d[col[0]] = row[idx]
return d
db.dict = con.cursor()
db.dict.row_factory = dict_factory
result = db.dict.execute(query).fetchone()
但是這會覆蓋col1
的值。我怎麼能回報,說,
{'t1.col1':123, 't2.col1':234, 't2.col2':345}
謝謝!