1
我有以下問題,我需要根據其他兩個表中給出的規範在一個表中返回多個值的差異。我非常肯定,這可以通過一些內部連接在正確的位置完成。我遇到的最大問題是一個可能有兩個以上的值需要比較,結果應該總是返回一行。MySQL返回多行之間的多個差異
應該返回從表C值以及哪些應該比較規範計算的差別列於表A.
下面我做的,因爲它更容易顯示的情況爲例情況和示例返回行。我已經嘗試了很多技巧,但沒有成功,所以你的幫助將不勝感激。
數據庫使用MySQL。
在此先感謝!
表A:
| identifier | type | top_id
-------------------------------------
| aaaa | X |
| bbbb | Y | aaaa
| cccc | Y | aaaa
| dddd | Y | aaaa
表B:
| identifier | is_base
--------------------------
| bbbb | TRUE
| cccc | FALSE
| dddd | FALSE
表C:
| identifier | type | sub_type | value
----------------------------------------------
| bbbb | A | Q | 100
| cccc | A | Q | 90
| dddd | A | Q | 80
結果:
| top_id | base | diff1_id | diff1_value | diff2_id | diff2_value
-------------------------------------------------------------------------------------
| aaaa | bbbb | cccc | 10 | dddd | 20