是IN運算符是否適合將5000+項傳遞到正確索引的大表中?大表在運算符MySql
基本上我試圖獲得MP3列表,並檢查是否歌曲存在於我們的系統通過做一個簡單的名稱搜索。
(僞) 從IN(陣列MP3的名字)的MP3選擇名稱
是IN運算符是否適合將5000+項傳遞到正確索引的大表中?大表在運算符MySql
基本上我試圖獲得MP3列表,並檢查是否歌曲存在於我們的系統通過做一個簡單的名稱搜索。
(僞) 從IN(陣列MP3的名字)的MP3選擇名稱
是快速
expr IN (value,...)
返回1如果expr等於任何在中值list,否則返回0.如果所有值都是常量,則根據expr的類型對它們進行評估並進行排序。然後搜索該項目是使用二進制搜索完成的。這意味着IN值非常快,如果IN值列表完全由常量組成。否則,根據第11.2節「表達式評估中的類型轉換」中描述的規則進行類型轉換,但將其應用於所有參數。
參考:http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html#function_in 參考:http://dev.mysql.com/doc/refman/5.0/en/type-conversion.html
對於你的情況,請檢查您max_allowed_packet
以應付龐大的字符串