2014-10-07 4 views
0

customer_status 테이블에 "id"열이 고유하고 cust_id이 고객 ID 인 이고 "status"가 고객의 현재 상태입니다. 다음과 같이MySQL : GROUP_CONCAT 열 및 개수

표는 다음과 같습니다

id  cust_id  status 
1   1   NEW 
2   2   NEW 
3   1   VIEWED 
4   1   NEW 
5   1   VIEWED 
6   1   NEW 

이제 내 요구 사항은 상태 및 각 고객의 상태 수를 보여주는 것입니다.

예를 들어 CUST_ID = 1 개 다음 출력해야 고려해

NEW : 3 
VIEWED : 2 

내가 GROUP_CONCAT를 사용하려고했지만 콜론으로 구분 상태 및 상태 개수를 표시와 함께 성공 couldnot.

도와주세요.

SELECT status, COUNT(status) FROM customer_status WHERE cust_id = 1 GROUP BY status 
+1

'GROUP_CONCAT을'아니다 결과를 단일 행으로 사용하지 않으려면이 작업에 적합해야합니다. –

답변

0

당신이 사용할 수있는 CONCAT : 나는 당신이 GROUP_CONCAT하지 않고 당신이 원하는 것을 얻을 수 있다고 생각

select count(status),status from customer_status where cust_id=1 group by status 
+0

이것은 완벽합니다. 감사.. –

0

이 시도()

select CONCAT(status,':',count(status)) from customer_status as result where cust_id = 1 group by status;