2012-06-20 46 views
1

这是问题:我有一个DB中的4个表。一个是“电话”,另外三个是支持团队“IT”,“Maintenacne”,“工程”。在“calls”表中创建一行时,会出现一个名为“支持团队”的字段,该字段,维护和工程有三种可能的选项。我需要能够根据“电话”表中要求的团队向这些团队发送电子邮件。所有的电子邮件信息都存储在各个团队的表格中。我希望这是有道理的。如果不是,我可以解释这个问题。MySQL:根据另一个表数据选择一个表(用于电子邮件)

回答

0

由于表格被限制,你可以做了一堆左联接:

SELECT * FROM calls 
LEFT JOIN team_it ON calls.`support team` = 'it' AND calls.id = team_it.id 
... etc 

我不知道是什么的加盟条件,所以我猜到了calls.id = team_it.id

如果已经是三个表有一个“外键”来打电话,你可以只用left join来代替。

+0

谢谢!我决定让自己更容易,并在“调用”表IT,维护和工程中创建3个coulmns,如果选择该团队,则将其设置为“0”和“1”。现在,如果IT是真实的,我的脚本将通过电子邮件向所有人发送电子邮件,并在其他部门以明智方式发送。然而,我会回去尝试一下你为我未来的参考而描述的方式。 –

+0

@TimFowler没问题。但是,添加这3列与单列有三个可能的值没有太大区别*除非*呼叫可以出现在所有三个支持团队表中。 –

+0

是的,可以打电话给团队的任何组合,而不只是一个团队 –

相关问题