我想要一个代码在两个不同的SQL表中的两列中搜索一个值,
a = raw_input('Enter name here')
cur.execute('SELECT phone FROM participants')
b = cur.fetchall()
if a in b:
print "The name is already exist"
在这里我搜索了桌子(参与者)。我应该怎么做才能在两个表中搜索?
答案 0 :(得分:0)
假设您要求SQL语句,则只需使用两个表中的select而不是一个表。要将所有内容保存在单个语句中,您可以使用UNION,例如:在这里:https://www.w3schools.com/sql/sql_union.asp
我们假设你有第二张桌子,在那里也有电话领域的朋友。
然后,您的SQL将是这样的:
SELECT phone FROM participants where name = <input name here>
UNION
SELECT phone FROM friends where name = <input name here>
如果这与您的案例相关,您可以在最后添加排序。 您还可以通过添加&#34;或&#34;来搜索每个表中的多个列。条款,像这样:
SELECT phone FROM participants where name = <your input here> or lastname = <your input here>
UNION
SELECT phone FROM friends where name = <your input here> or lastname = <your input here>
当然,你必须用适当的搜索字符串替换。 顺便说一句,你提供的代码不是搜索任何东西 - 它只是将表格中的所有手机转储到&#34; b&#34;变量,这可能是非常低效的,尤其是当表变大时。我强烈建议通过SQL进行搜索,然后从脚本中显示输出。