1

同じテーブルの ID を保持できるマッピング テーブルがあります。

たとえば、私は持っています:

変数 ( テーブル ) 値 ( テーブル ) Variables_Values ( マッピング テーブル )

マッピング テーブルには次のフィールドがあります。

VariableID
To_VariableID
To_ValueID

したがって、1 つの行に 2 つの変数 ID、または変数 ID と値 ID を含めることができます。これは常にペアであるため、2 つの変数 ID と値 ID が同時に存在することはありません。

変数と値のテーブルには名前フィールドがあり、変数と値にも名前があります。

マッピング テーブルの ID に基づいて名前を表示するクエリを作成したいのですが、方法がわかりません。

現在、次のような結果を返すクエリがあります。

VariableName To_VariableID To_ValueID

To_VariableID To_ValueID ではなく、VariableName_2、ValueName を表示したいです。

これにはテクニックがありますか?次のクエリの組み合わせでしょうか?

SELECT map.ID, map.TransitionID, variable.Name
FROM Variables AS variable INNER JOIN Mapping AS map 
ON variable.VariableID = map.VariableID

SELECT variable.VariableID, variable.Name
FROM Variable AS variable
WHERE variable.VariableID IN ( SELECT map.To_VariableID FROM Mapping AS map)

SELECT value.Name
FROM Values AS value
WHERE value.ValueID IN ( SELECT map.To_ValueID FROM Mapping AS map)

ありがとうございました。

4

1 に答える 1

1

それはこれと同じくらい簡単でした:

SELECT map.Transition_Set_Variable_ID, 
       map.Transition_ID,
       variable.Name,
       variable2.Name,
       value.Name
FROM Variables AS variable 
  INNER JOIN Mapping AS map ON variable.VariableID = map.VariableID
  LEFT JOIN Variables AS variable2 ON map.To_VariableID = variable2.VariableID
  LEFT JOIN Values AS value ON tsv.To_ValueID = value.ValueID
ORDER BY map.TransitionID, variable.VariableID 
于 2012-11-08T13:27:31.323 に答える