数在一列MySQL的所有相同的逗号分隔值
问题描述:
我有2个表,并有包含逗号分隔值的列,我想指望这列的所有相同的数值,这里的示例表:数在一列MySQL的所有相同的逗号分隔值
Client table
ID | Name | Procedure
1 | Joe | Samp1,Samp2
2 | Doe | Samp1,Samp2,Samp3
3 | Noe | Samp1,Samp2
Desire Output
Summary table (For Procedure)
ID | NAME | COUNT
1 | Samp1 | 3
2 | Samp2 | 3
3 | Samp3 | 1
现在,你有任何想法或建议,所以我可以做到这一点?像添加新表或这可能与单个查询?
答
尝试此查询
SELECT LENGTH(COLUMN) - LENGTH(REPLACE(COLUMN, ',', '')) FROM TABLE_NAME
+0
它只计算逗号分隔值,但不像我想要的输出 – Newbie
你应该改变你的表的设计。切勿将多个值存储在单个列中 –
http://stackoverflow.com/questions/3653462/is-storing-a-delimited-list-in-a-database-column-really-that-bad/3653574 – e4c5
@juergend谢谢对于小费,也许我应该改造我的桌子。 – Newbie