【问题标题】:SQL query - Trying to figure out SQL statementSQL 查询 - 试图找出 SQL 语句
【发布时间】:2014-10-09 21:57:20
【问题描述】:

我正在尝试编写一个查询来请求联系过“Wegmans Food Markets”的员工的姓名。

公司 公司编号 公司名称

联系方式 公司编号 名 姓氏

联系员工 联系员工ID 联系人 ID 员工编号

员工 员工ID 名 姓氏

我正在尝试编写子查询,但由于我是初学者,我无法弄清楚如何去做。

【问题讨论】:

  • “您应该始终在您的问题或答案中提供完整的代码示例(例如架构、数据样本和预期结果)。”对于您的表定义,请提供完整的 CREATE TABLE 语句,包括这些表定义的任何外键。另外,您尝试过哪些涉及子查询的 SQL 语句?

标签: sql many-to-many subquery


【解决方案1】:

您不需要定义额外的表。您可以将EmployeeID作为外键放在Contact表中。

公司 CompanyID 公司名称

联系 CompanyID FirstName LastName,EmployeeID(外键)

Employee EmployeeID FirstName LastName

每个员工都有一个联系人,每个联系人都有一个公司。

Select E.FirstName from Employee E inner join Contact C on E.EmployeeID=C.EmployeeID inner join Company P on C.CompanyID=P.CompanyID where P.CompanyName="Wegmans Food Markets"

【讨论】:

    【解决方案2】:

    从员工 E、Contact-Employee Ce、Contact C、Company D 中选择 E.FirstName 其中 E.EmployeeId = Ce.EmployeeId、Ce.ContactId = C.ContactId、C.CompanyId = D.CompanyId 和 D.CompanyName = E.FirstName 的“Wegmans 食品市场”组

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多