mysql中查询某个字符串出现次数

  最近经常看到有人在群里问如何查询某一行某一列的xx的数量,基本都是建表时候,把id都放到这个字段中,而对应的解决方法无非就是:

  1. 查出来,用后台语言解决

  2. 写个存储过程,使用mysql提供的截取等函数来处理

  3. 修改表结构,新增一个关联表,自己关联查询再count

 

  说了解决方法,可有没有不用后台语言,也不改表,也不存储过程,一个简单sql查询来的呢?

  其实可以换种思维:  例如  数据是这样的   

  id     web_id

  1      1,2,3,..99

  我要查询web_id的数量就是 , 逗号的数量。

  对应查询语句可以这样写 :  SELECT LENGTH( `web_id`) - LENGTH(REPLACE( `web_id`,',','' )) AS num FROM table

 

posted @ 2018-03-20 11:13  Axierty  阅读(27806)  评论(1编辑  收藏  举报