在sql語句中使用 like模糊查詢時,應該盡量避免%%,因為模糊查詢是比較慢的,當出現這樣的情況時,應該考慮優化。
舉個例子:我在表中查詢2012 年建立的記錄
select * from `component_data` where creation_date like '2012%';
得到的時間
[sql] select * from `component_data` where creation_date like '2012%';受影響的行: 0
考慮優化之後的sql如下
select * from `component_data` where creation_date>='2012-01-01' and creation_date<'2013-01-01';
執行結果
[sql] select * from `component_data` where creation_date>='2012-01-01' and creation_date<'2013-01-01';受影響的行: 0
可以看出,優化之後的提公升是很大的。當查詢的結果比較多時,這個差異更為明顯。我這個查詢只有9000多條資料。
我只是舉了個例子。當遇到like查詢時,大家應該充分發揮你的聰明才智,具體問題進行具體對待,進行優化
Mysql sql模糊查詢,sql優化日常
mysql 1 模糊查詢 2 聯表查詢優化 1 模糊查詢 like select from ms fans where nick name like demo limit 0,100 like xx 不能使用索引 like xx 可使用字段索引,查詢效率快 locate同樣不能使用索引,40萬資料中...
sql 模糊查詢
一般模糊語句如下 select 字段 from 表 where 某欄位 like 條件 其中關於條件,sql提供了四種匹配模式 1,表示任意0個或多個字元。可匹配任意型別和長度的字元,有些情況下若是中文,請使用兩個百分號 表示。比如 select from user where u name lik...
SQL模糊查詢
sql提供了四種匹配模式 1.表示任意 0個或多個字元。如下語句 select from user where name like 三 將會把 name為 張三 三腳貓 唐三藏 等等有 三 的全找出來 2.表示任意單個字元。語句 select from user where name like 三 ...