我有两个表 x 和 y
表 x 有 24 列,每列都有不同的 Id 值
表 Y 有一个 Id 值列和一个描述
我需要编写一个过程、查询或视图,以尽可能最佳的性能方式返回表 x 中包含的 24 个 Id 值中的每一个的描述。
我编写了一个调用函数 24 次的视图。该函数根据提供的 Id 返回描述。虽然这行得通,但它的表现并不是特别好。
在需要从单个表中获得这么多描述的情况下,我应该使用一种技术吗?
这是表 x 的定义(为清楚起见,删除了不相关的列)
[DefinitiveHLATypeId] [int] IDENTITY(1,1) NOT NULL,
[PersonId] [int] NOT NULL,
[A_X] [int] NULL,
[A_Y] [int] NULL,
[B_X] [int] NULL,
[B_Y] [int] NULL,
[Bw_X] [int] NULL,
[Bw_Y] [int] NULL,
[C_X] [int] NULL,
[DRB1_X] [int] NULL,
[DRB1_Y] [int] NULL,
[DRB3_X] [int] NULL,
[DRB3_Y] [int] NULL,
[DRB4_X] [int] NULL,
[DRB4_Y] [int] NULL,
[DRB5_X] [int] NULL,
[DRB5_Y] [int] NULL,
[DQA_X] [int] NULL,
[DQA_Y] [int] NULL,
[DQB_X] [int] NULL,
[DQB_Y] [int] NULL,
[DPA1_X] [int] NULL,
[DPA1_Y] [int] NULL,
[DPB1_X] [int] NULL,
[DPB1_Y] [int] NULL
这是表 y 的定义(为清楚起见,删除了不相关的列)
[AntigenId] [int] IDENTITY(1,1) NOT NULL,
[AntigenDescription] [varchar](2000) NOT NULL
两个表之间的关系是表x中的_X & _Y列和表Y中的AntigenId列之间的关系
我需要为表 x 中的每个 _X 和 _Y 列返回抗原描述。