有逗号的列,如何准确匹配

对于列内存在逗号的字符串,如何使用mysql准确匹配


初始使用sql
SELECT distinct ci.* FROM gt_cim_course ci LEFT JOIN gt_cim_classification cc ON ci.COURSE_ID=cc.COURSE_ID
		where ci.CHOOSED_ORGANIZATION  regexp 'root|root005005|root005'

该sql无法区分root与root001之类的。造成查询出的目标扩大化。
后通过参考其他人的sql,新版sql如下
SELECT distinct ci.* FROM gt_cim_course ci LEFT JOIN gt_cim_classification cc ON ci.COURSE_ID=cc.COURSE_ID
		where CONCAT(ci.CHOOSED_ORGANIZATION,',')  regexp 'root,|root005005,|root005,'

在最后加个逗号,匹配带逗号的字符串。

该方法应该是走了个捷径,希望有更优的方法,能够解决。

Thanks

猜你喜欢

转载自pigga.iteye.com/blog/2420415