下面介紹Mysql和Sqlite和Sqlserver中,根據select的條件判斷是否插入。例如:
一、Mysql中:
INSERT INTO books (name) SELECT 'SongXingzhu' FROM dual WHERE NOT EXISTS (SELECT id FROM books WHERE id = 1)
二、Sqlite中:
由於Sqlite中沒有臨時表:dual
所以,需要這樣寫
INSERT INTO books (name) SELECT 'Songxingzhu' WHERE NOT EXISTS (SELECT id FROM books WHERE id = 1)
三、Sqlserver中:
SqlServer中需要另一種寫法:
IF NOT EXISTS (SELECT id FROM books WHERE id = 1) INSERT INTO books (name) SELECT 'Songxingzhu'