SQL查询可能有外键的外键使用

问题描述:

我需要做一个查询,如下所示:SQL查询可能有外键的外键使用

像这样的东西(不是真正的SQL,但是这是我想要做什么):

SELECT * FROM price_entry WHERE sum = 100 AND fk_service_order.fk_service='REPAIR' 

所以我想获得的所有price_entry行,其中sum列具有价值100 fk_service_order将指向一个service_order行中具有“修复”价值上是fk_service

编辑:是的sum实际上是这里一列的名称。

+2

请你分享的表结构? –

+2

请向我们展示一些数据或表格结构或两者。如果你打算'sum'是一个列的实际总和,那么你还必须使用'GROUP BY'或一个分析函数。 –

+0

总和在这种情况下是一列。错误的命名我知道。我会将其添加到问题中。 –

我假设这样的设置:

price_entry

  • 编号
  • 总和
  • fk_service

service_order

  • 编号
  • fk_service_order

    SELECT * 
    FROM price_entry 
    WHERE sum = 100 
         AND EXISTS 
         (
          SELECT TOP 1 1 
          FROM service_order so 
          WHERE fk_service= so.Id AND fk_service_order = 'REPAIR' 
         )