小编Max*_*Max的帖子

连接多个nvarchar列

我有这样一张桌子:

CREATE TABLE [dbo].[Table](
    [Id] [INT] IDENTITY(1,1) NOT NULL,
    [A] [NVARCHAR](150) NULL,
    [B] [NVARCHAR](150) NULL,
    [C] [NVARCHAR](150) NULL,
    [D] [NVARCHAR](150) NULL,
    [E] [NVARCHAR](150) NULL,
 CONSTRAINT [con] PRIMARY KEY CLUSTERED 
(
    [Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
Run Code Online (Sandbox Code Playgroud)

并寻找性能改进以加入此表.

选项1 - 将所有字符串组合成nvarchar主键,然后执行:

Source.[A] + Source.[B] + Source.[C] + Source.[D] + Source.[E] = Table.PKString
Run Code Online (Sandbox Code Playgroud)

据我所知,这是不好的做法.

选项2 - 使用:

Source.[A] + Source.[B] + Source.[C] + Source.[D] …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server

3
推荐指数
1
解决办法
530
查看次数

标签 统计

sql-server ×1

t-sql ×1