我做了这样的事情:
sql_query1=...
sql_query2=...
cur.execute(sql_query1,(actorId1,actorId2))
results1=cur.fetchall()
cur.execute(sql_query2,(actorId1,actorId2))
results2=cur.fetchall()
nested_tuple_list1=[]
for result in results1:
nested_tuple_list1.append(result)
return(nested_tuple_list1)
nested_tuple_list2=[]
for result in results2:
nested_tuple_list2.append(result)
return(nested_tuple_list2)
我想获得两个查询的共同结果。我能做什么吗?
我需要的示例:
jim | tim | a jim | dan | b
dan | mo | b dan | mo | b
jim | dan | c
我想要得到:
dan | mo | b
最佳答案
有点不清楚你想要实现什么,但如果你正在使用列表,最简单的方法是:
交集=[如果nested_tuple_list2中的值则为nested_tuple_list1中的值]
上面的内容也适用于列表中的元组,假设您将元组作为一个整体进行匹配,而不是其中的元素。例如
a=[(1, 2), (18, 3), (9, 8), (11, 83)]
b=[(4, 3), (8, 47), (42, 77), (1, 2), (3, 18)]
intersection=[value for value in a if value in b]
我得到的结果是:
[(1, 2)]
如果你想按元素比较列表中的元组,这有点复杂,但也是可行的。
关于python - pymysql-将两次不同查询的结果合并成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50677745/