2016-12-02 8 views
0

私は2台を持っているし、カンマ区切り値を含む列がありますし、私はその列のすべてに同じ値をカウントしたい、ここでは、サンプルテーブルです:は、1つの列の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 

今、私はそれが起こるようにするためにあなたが何か考えや示唆を持っていますか?新しいテーブルを追加するか、単一のクエリで可能ですか?

+3

を試してみてください。複数の値を1つの列に保存しないでください。 –

+2

http://stackoverflow.com/questions/3653462/is-storing-a-delimited-list-in-a-database-column-really-that-bad/3653574 – e4c5

+0

@juergendありがとう先端のために、多分私は私のテーブルを改造するべきです。 – Newbie

答えて

0

は、あなたがあなたのテーブルのデザインを変更する必要があり、このクエリ

SELECT LENGTH(COLUMN) - LENGTH(REPLACE(COLUMN, ',', '')) FROM TABLE_NAME 
+0

カンマ区切りの値だけを数えますが、希望の出力とは異なります。 – Newbie

関連する問題