回答

收藏

通过select插入表前如何检查重复项目?

技术问答 技术问答 452 人阅读 | 0 人回复 | 2023-09-14

通过select插入表前如何检查重复项:% n- M+ h% G% R0 u' c. K' V
insert into table1select col1,col2 from table2我需要检查table是否已有table1.col1.value = table2.col1.value如果是,从插入中排除行。
- s' k2 ?& L' m; y" K5 s% ?4 ^! c                                                                ( Y3 U+ m3 h2 q, |+ i
    解决方案:                                                               
1 ~- |* F9 N: [                                                                INSERT INTO table1 SELECT t2.col        t2.col2 FROM   table2 t2          LEFT JOIN table1 t1                                                                                                                                                                                                                                                                                                                                                                              ON t2.col1 = t1.col1                                                                                                                                                                                                                                                                                                                                                                                 AND t2.col2 = t1.col2 WHERE  t1.col1 IS NULL替代使用) _' A# v/ l: K  s4 q2 g! K
INSERT INTO @table2 SELECT col        col2 FROM   table1 EXCEPT SELECT t1.col        t1.col2 FROM   table1 t1        INNER JOIN table2 t2                       ON t1.col1 = t2.col1             AND t1.col2 = t2.col2使用不存在的替代方法
" _* J" M6 Y! e# u, }, uINSERT INTO table2 SELECT col1,col2 FROM table1 t1WHERENOT EXISTS( SELECT 1    FROM table2 t2    WHERE t1.col1 = t2.col1                                                                                                                                                                                                                                                                                                                                                                              AND t1.col2 = t2.col2)
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则