【发布时间】:2017-01-06 08:01:54
【问题描述】:
显然是 SQL 查询初学者。
所以我有 3 个包含数据的表:帐户、所有者、车辆。
这三个通过一个公共变量绑定在一起:“User_Name”。
我想从这三个表中获取 User_Name 与我的搜索变量匹配的所有项目。因此,如果我搜索具有 User_Name:"Mike" 的用户,则将显示三个表中具有 User_Name"Mike" 的所有项目。
我有以下使用通用“JOIN”的查询,但是如何更改它以使用搜索变量从所有表中选择与该变量匹配的所有?
cursor.execute("SELECT * FROM Account JOIN Owner ON(Account.User_Name = Owner.User_Name) JOIN Vehicle ON(Account.User_Name = Vehicle.User_Name)")
我查看了有关“从多个表中选择”的各种其他堆栈线程,但它们都只从 2 个表中选择,而从 3 个表中选择的那些没有我想要的变量匹配。
简而言之:
搜索三个表并获取公共列变量与搜索字符串匹配的所有行。
【问题讨论】:
-
也许这个问题的答案会有所帮助:stackoverflow.com/questions/35470590/…
-
添加
WHERE Account.User_Name = %s,并替换搜索名称。 -
我希望能够为您使用“显然”这个词加分。不,这不是讽刺。成群结队的人提出问题,并以某种方式想象我们无法分辨。 :)
标签: python sql database sqlite