由于 2000 行需要太多时间,我如何将此语句 select 增强为?

What I do to enhance this statement select into because it take too much time for 2000 rows?

我在 SQL 服务器上工作 我在将 select 转换为 table 时传输数据很慢,传输少量 (2000) 行需要太多时间

这是我的执行计划:

https://www.brentozar.com/pastetheplan/?id=r1o3p8NOt

这是我的查询:

SELECT  
    d.PartID ,
    d.Code ,
    d.CodeTypeID ,
    tr.RevisionID ,
    tr.ZPLID,
    tr.partlevel,
    d.FeatureName,
    d.FeatureValue
INTO 
    ExtractReports.dbo.TEqualCodes
FROM
    ExtractReports.dbo.TAllData d WITH(NOLOCK)
INNER JOIN
    parts.tradecodes tr WITH(NOLOCK) ON d.partid = tr.partid 
                                     AND d.codetypeid = tr.codetypeid 
                                     AND tr.partlevel = 0 
                                     AND d.code = tr.code 
                                     AND tr.zplid = 4239
LEFT JOIN
    [ExtractReports].[dbo].[TradeCodesInsert] i WITH(NOLOCK) ON i.partid = tr.partid 
                                                             AND i.codetypeid = tr.codetypeid 
                                                             AND i.partlevel = tr.partlevel 
                                                             AND i.partlevel = 0 
                                                             AND tr.zplid = i.zplid
WHERE
    i.partid IS NULL

Table 两个 tables 贸易代码和贸易代码插入的结构

CREATE TABLE [Parts].[TradeCodes]
(
    [TradeCodesID] [int] IDENTITY(1,1) NOT NULL,
    [PartID] [int] NOT NULL,
    [Code] [varchar](20) NOT NULL,
    [CodeTypeID] [int] NOT NULL,
    [SourceTypeID] [bigint] NULL,
    [RevisionID] [bigint] NULL,
    [ModifiedDate] [datetime] NULL,
    [CreatedDate] [datetime] NOT NULL,
    [Modifiedby] [int] NULL,
    [CreatedBy] [int] NULL,
    [PartLevel] [tinyint] NULL,
    [ZPLID] [int] NULL,
    [MappingDoneFlag] [int] NOT NULL,
    [MappingValueId] [int] NOT NULL,

    CONSTRAINT [PK__TradeCod__FEFAF27527F7A1C3] 
        PRIMARY KEY CLUSTERED ([TradeCodesID] ASC)
                WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, 
                      IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, 
                      ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
    CONSTRAINT [UC_PartCode] 
        UNIQUE NONCLUSTERED ([PartID] ASC, [CodeTypeID] ASC, [PartLevel] ASC)
               WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, 
                     IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, 
                     ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

CREATE TABLE ExtractReports.dbo.TAllData
(
    PartID INT,
    Code VARCHAR(20),
    CodeTypeID INT,
    RevisionID BIGINT,
    ZPLID INT,
    ConCount INT,
    FeatureName NVARCHAR(500),
    FeatureValue NVARCHAR(500)
)

如何解决上面查询速度慢的问题?

完全创建那些索引:

CREATE INDEX X1 ON [dbo].[TradeCodesInsert] (partid, codetypeid, partlevel);
CREATE INDEX X2 ON parts.tradecodes  (codetypeid, partlevel, zplid, partid) INCLUDE (RevisionID);
CREATE INDEX X2 ON ExtractReports.dbo.TAllData (code, codetypeid) INCLUDE (PartID , FeatureName, FeatureValue)

如果你没有。