2013-05-21 52 views
1

我想從select中將數據插入表中。這工作到目前爲止...PostgreSQL從select中插入但忽略現有行

INSERT INTO table_2 
    SELECT t.id, 1 
     FROM table_1 t 
     WHERE t.title LIKE '%search%'; 

但是,當我第二次運行此語句,該語句引發一個異常,因爲一些行已經存在。

我能做些什麼來解決這個問題?

感謝您的幫助, Urkman

回答

4

可以插入他們已經不存在行,通過添加的條款。

insert into table_2 
select t.id, 1 
    from table_1 t 
where t.title like '%search%' 
    and not exists (select t2.id from table_2 t2 where t2.id = t.id);