懵懂的菜鸟

Stay hungry,Stay foolish.

导航

sql语句语句中的正则查找

举例:

select tncl_id from tncl where tncl_id regexp'^0065';

 

有一表,数据有10万多条,其中某列数据示例如下:

100000-200000-300001

100000-200000-300002

100000-200001-300003

100000-200001-300004

100000-200002-300005

当查询数据中含有 200001 时,

用LIKE 时sql:colName LIKE'%200001 %' ,用时4秒左右

用正则时sql:colName REGEXP '^.*200001 -.*$',用时2秒左右

用IN时sql:SUBSTRING_INDEX(SUBSTRING_INDEX(C6, '-', -2),"-",1) IN ( 107003 ),用时400ms左右

posted on 2017-09-06 09:17  懵懂的菜鸟  阅读(1014)  评论(0编辑  收藏  举报