2017-06-22 146 views
0

我需要做一個查詢,如下所示: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

總和在這種情況下是一列。錯誤的命名我知道。我會將其添加到問題中。 –

回答

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' 
         )