php – 加入表mysql – 没有双重迭代
让我首先说这应该是一个相对简单的问题,这是由于糟糕的数据库设计(不是我),并且说我也不是
mysql的专家而变得不必要.
考虑以下 表格表 请注意列homeID和visitorID如何包含团队的名称而不是实际的teamID 为了解决这个问题,我创建了一个包含teamID和teamName的列的新表,如下图所示. 表队 我的问题 对于BOTH主队和客场球队,我必须从桌上球队获得teamID 所以我创建了Teams表和这个简单的脚本: SELECT schedule.*,团队.* 输出mysql脚本 限制1 请注意上面如何仅为1个具有限制1的团队生成teamID 无限制声明(双重迭代) 请注意上面如何为两个团队检索teamID.问题是它做了一次双重迭代. TLDR;以上提出了以下问题 >首先,该脚本将为主队生成两个输出,为客队生成一个输出.然而,我不能指望. 题 如何通过单次迭代从表团队获得两个teamID?希望这有道理…… 额外 带有硬编码团队名称的应用程序演示看起来像这样(只是想知道他们想要实现的目标) 解决方法
听起来你想加入两次团队来安排.
SELECT s.*,th.*,ta.* FROM schedule s INNER JOIN teams th ON s.homeid = th.teamname INNER JOIN teams ta ON s.visitorid = ta.teamname WHERE s.gameid = 411; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |