最近經常看到有人在群里問如何查詢某一行某一列的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