【问题标题】:SQL Join on Multiple Tables with Rows Filtered on Condition [closed]多个表上的 SQL 连接,其中行在条件下过滤 [关闭]
【发布时间】:2016-03-26 02:49:24
【问题描述】:

我要做的是创建一个 sql 语句,其中包含以下内容:销售人员的名字和姓氏、他们的 SIN 号、产品 SKU、产品描述以及所有单位销售价格超过 100.00 美元的产品价格。

这是我收到的信息。

这是我目前所拥有的:

选择 s.FirstName、s.LastName、s.SIN、p.SKU、p.ProductDescription、p.Price 来自推销员

【问题讨论】:

  • 您有未定义的表别名。

标签: sql left-join conditional inner-join where-clause


【解决方案1】:

您可以使用以下 SQL 语句:

SELECT FirstName, LastName, SIN, SKU, Price, ProductDescription 
FROM Salesmen 
INNER JOIN ProductSales ON SalesmanId=SellerId 
INNER JOIN Products ON (ProductSales.ProductID=Products.ProductID)
WHERE (Price>100 AND UnitSalesPrice >100)

或者,使用替代WHERE 子句(从您的描述中,条件并不完全清楚):

WHERE (Price>100)

希望这会有所帮助。

【讨论】:

  • WHERE 最好位于“ProductSales”表中,以尽量减少需要连接的行。
  • @ThanasisGrammatopoulos 感谢您周到的 cmets。 OP 可以相应地修改 WHERE 子句。最好的问候,
  • 谢谢,确实只是单价超过 100.00 美元。
  • 不客气。祝你的项目好运。最好的问候,
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-15
  • 2020-08-05
相关资源
最近更新 更多