首页 > 解决方案 > 将查询中的表列重命名为 SQL Server 中其他表中的其他列

问题描述

我有两个具有这种结构的表:

表A:

    s22129    |    s22130    |    s22121    |    other signals...    
   -----------+--------------+--------------+---------------------
    value1    |    value2    |    value3    |         ...

表 B:

    code    |    description
   ---------+---------------
   s22129   |    temperature    
   s22130   |     humidity
   s22121   |     pressure

我需要在选择中将列名重命名为description表 B

标签: sql-server

解决方案


您可以使用apply

select b.code, aa.code_val as description
from a cross apply
     ( values ('s22129', [s22129]), ('s22130', [s22130]), . . .  
     ) aa(code, code_val) inner join
     b 
     on b.code = a.code;

推荐阅读