You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

复合主键表的INSERT INTO SELECT数据同步方案咨询

复合主键表的跨库数据插入方案

针对复合主键的场景,不能只通过单个字段判断行是否存在,必须同时匹配所有主键字段。以下是几种可行的解决方法:

方法1:用NOT EXISTS子查询(推荐)

通过同时对比三个复合主键字段,精准筛选出目标表中没有的源表行,逻辑清晰且性能稳定:

INSERT INTO EFIN00123..aktivnost (
    sifra_kapit_proj,
    sifra_aktivnosti,
    sifra_funkcije,
    naziv_aktivnosti,
    row_version,
    sifra_programa
)
SELECT 
    src.sifra_kapit_proj,
    src.sifra_aktivnosti,
    src.sifra_funkcije,
    src.naziv_aktivnosti,
    src.row_version,
    src.sifra_programa
FROM EKUF00123..aktivnost src
WHERE NOT EXISTS (
    SELECT 1
    FROM EFIN00123..aktivnost tgt
    WHERE tgt.sifra_kapit_proj = src.sifra_kapit_proj
      AND tgt.sifra_aktivnosti = src.sifra_aktivnosti
      AND tgt.sifra_funkcije = src.sifra_funkcije
)

方法2:LEFT JOIN筛选无匹配行

用左连接关联两张表,筛选出目标表主键字段为NULL的行(即源表独有的行):

INSERT INTO EFIN00123..aktivnost (
    sifra_kapit_proj,
    sifra_aktivnosti,
    sifra_funkcije,
    naziv_aktivnosti,
    row_version,
    sifra_programa
)
SELECT 
    src.sifra_kapit_proj,
    src.sifra_aktivnosti,
    src.sifra_funkcije,
    src.naziv_aktivnosti,
    src.row_version,
    src.sifra_programa
FROM EKUF00123..aktivnost src
LEFT JOIN EFIN00123..aktivnost tgt
    ON tgt.sifra_kapit_proj = src.sifra_kapit_proj
    AND tgt.sifra_aktivnosti = src.sifra_aktivnosti
    AND tgt.sifra_funkcije = src.sifra_funkcije
WHERE tgt.sifra_kapit_proj IS NULL

方法3:EXCEPT语句(SQL Server专属)

如果使用的是SQL Server,EXCEPT语句可以直接对比两个数据集的差异,返回源表有但目标表没有的行,适合表结构完全一致的场景:

INSERT INTO EFIN00123..aktivnost (
    sifra_kapit_proj,
    sifra_aktivnosti,
    sifra_funkcije,
    naziv_aktivnosti,
    row_version,
    sifra_programa
)
SELECT 
    sifra_kapit_proj,
    sifra_aktivnosti,
    sifra_funkcije,
    naziv_aktivnosti,
    row_version,
    sifra_programa
FROM EKUF00123..aktivnost
EXCEPT
SELECT 
    sifra_kapit_proj,
    sifra_aktivnosti,
    sifra_funkcije,
    naziv_aktivnosti,
    row_version,
    sifra_programa
FROM EFIN00123..aktivnost

内容的提问来源于stack exchange,提问作者EternallyConfused

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 00:52:58