環境
- SQL Server 2014/2017
結論
値を参照できるように、両方のテーブルにIDが必要です。
example1.sql
select 置き換えたい列名 = (
select 参照先列名
from 参照先テーブル名
where 置き換えたいテーブル名.置き換えたい列名 = 参照先テーブル名.参照先列名)
from 置き換えたいテーブル名
具体例
StudentsテーブルにはStudentID,Name,FavoriteSubjectIDの3つの列が存在します。
SubjectsテーブルにはSubjectID,SubjectNameの2つの列が存在します。
StudentsテーブルのFavoriteSubjectIDをSubjectテーブルのSubjectNameに置き換えて表示したいと思います。つまり、
example2.sql
select StudentID,Name,FavoriteSubjectID =(
select SubjectName
from Subjects
where Students.FavoriteSubjectID = Subjects.SubjectID)
from Students