Sql server 2008 SQL查询实现以下输出

Sql server 2008 SQL查询实现以下输出,sql-server-2008,Sql Server 2008,我有以下表格,如下图所示。 请编写sql查询以实现所需的输出 编写一条Select语句以实现此输出。尝试下面的查询 Select m.Id,Name=Case CID When 1 Then (Select t1.Name from Table1 t1 Where m.Id=t1.Id) When 2 Then (Select t2.Name from Table2 t2 Where m.Id=t2.Id) When 3 Then (Select t3.Name from Table3 t3

我有以下表格,如下图所示。 请编写sql查询以实现所需的输出

编写一条Select语句以实现此输出。

尝试下面的查询

Select m.Id,Name=Case
CID
When 1 Then (Select t1.Name from Table1 t1 Where m.Id=t1.Id)
When 2 Then (Select t2.Name from Table2 t2 Where m.Id=t2.Id)
When 3 Then (Select t3.Name from Table3 t3 Where m.Id=t3.Id)
When 4 Then (Select t4.Name from Table4 t4 Where m.Id=t4.Id)
END
from MasterTable m

到目前为止,您已经尝试了什么?非常感谢,它非常有效…:-)我们可以在Case语句中动态传递这些CID,而不是静态传递吗?是的,您可以在存储过程中这样做,并创建动态查询。