示例架构:
CREATE TABLE [dbo].[Base](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Option1ID] [int] NULL,
[Option2ID] [int] NULL,
[Option3ID] [int] NULL,
[Option1Name] [varchar] NULL,
[Option2Name] [varchar] NULL,
[Option3Name] [varchar] NULL,
[Option1LName] [varchar] NULL,
[Option2LName] [varchar] NULL,
[Option3LName] [varchar] NULL,)
有没有办法获得显示如下的结果:
ID | OptionID | OptionName | OptionLName
我试图使用UNION ALL来实现这一点,但是这意味着在我的示例中要在同一行上执行3次,但在我真正的问题中,我必须执行10次。由于遗留代码,我无法规范化表。有没有办法只遍历基本行一次?