MySQL數據庫系統中有一種非常有用的語句,被稱為“有則插入,無則忽略”(INSERT IGNORE INTO),它可以讓我們在插入數據時不必擔心重復插入的問題。
在使用這個語句時,我們需要在插入數據的表格前添加IGNORE關鍵字。例如:
INSERT IGNORE INTO `student_scores` (`student_id`, `subject`, `score`) VALUES (1001, 'math', 80), (1001, 'english', 90), (1002, 'math', 75);
這條語句會嘗試向表格“student_scores”中插入三條數據。前兩條數據的“student_id”是相同的,如果不使用IGNORE關鍵字,這些數據將會產生重復。但是我們使用了IGNORE關鍵字,MySQL在插入數據時會將重復的數據忽略掉,不會產生錯誤或警告。
這樣做的好處是,我們不必手動檢查每一條數據是否已經存在于表格中。在某些情況下,檢測重復數據可能會非常耗時,而IGNORE關鍵字可以自動完成這個過程,從而提高了我們的效率。