mysql row to column

I need to convert the result queried by a select statement:

  1. Query sql
 
SELECT d.status,COUNT(*) AS counts FROM t_personal_data d WHERE d.project_id='8a8300e25fc3c0d1015fc8da35fb0003' AND d.viewable IS TRUE GROUP BY d.status;
  

2. Line-to-column statement:
SELECT
  t.project_id,
  MAX(CASE t.statu WHEN 'finish' THEN counts ELSE 0 END ) finish,
  MAX(CASE t.statu WHEN 'running' THEN counts ELSE 0 END ) running,
  MAX(CASE t.statu WHEN 'wait' THEN counts ELSE 0 END ) waits
FROM (
SELECT d.project_id,d.status AS statu,COUNT(*) AS counts FROM t_personal_data d
WHERE d.project_id='8a8300e25fc3c0d1015fc8da35fb0003' AND d.viewable IS TRUE GROUP BY d.status
) t;

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326087752&siteId=291194637