程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySql like 查詢 變向寫法(不用like 完成like查詢)

MySql like 查詢 變向寫法(不用like 完成like查詢)

編輯:MySQL綜合教程

 

select * from account where userName like 'ad%';

select * from account where userName >= 'ad' and userName < 'ae';

 

/*

這兩種查詢的結果是一樣的,效率好像也差不多,沒有做具體的效率測試,有興趣可以測試下效率。

like查詢中的ad%是查詢ad開頭userName的數據,

而userName >= 'ad'就是查詢ad開頭的數據並且還包含ae、af、ag……,也就是說是查詢“ad”中包含d且大於“ad”中d的數據

所以,and userName < 'ad'就保證查詢的區間在“ad”中的,而ae、af、ag……這些數據就不會出現在結果集中。

當然你可以試試:

select * from account where userName >= 'ad' and userName < 'az';

結果集是不是包含:ae、af、ag……ak、al……ay、az等開頭的數據。

*/

 

 

作者:hoojo

出處:http://www.blogjava.net/hoojo/archive/2011/10/27/362173.html

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved