我遇到了一个无法解决的问题
我有这样一个熊猫的数据框:
LastName FirstName Goals
0 Messi Lionel 10
1 Donovan Landon 7
2 Hazard Eden 5
我需要对Teradata进行查询,从另一个表中获取数据,通过数据框中每个人的LastName和FirstName过滤结果,如下所示:
"Select * from Table1 where (LastName= 'Messi' and FirstName='Lionel) or (LastName='Donovan' and FirstName='Landon') or (LastName='Hazard' and FirstName='Eden')"
我尝试了一些循环,但我不能做到这一点,采取每一行,并添加或语句。有人有办法解决吗
提前谢谢
我们通常可以做
merge
如果要检查一个表中多列的值与另一个表中多列的值,可以执行以下操作:
我不确定
DataFrame
是如何工作的,但是如果您可以在SQL
的某些风格中访问DataFrame结果集中的(lastname, firstname)
字段,请尝试将其粘贴到IN ()
构造中SQL Fiddle
这可以通过应用遮罩来解决
假设给定df:
条件1:(LastName='mesi'和FirstName='Lionel')
条件2:(LastName='Donovan'和FirstName='Landon')
其他名字也一样
然后使用loc选择:
您可以添加任意多个条件。希望这有帮助
相关问题 更多 >
编程相关推荐