Ich denke, es ist so trivial, aber ich mit diesem fest:Mysql mit einer Gruppe von + IF + LEFT JOIN + GROUP_CONCAT
SELECT u.id, u.name,
IF(s.prod_id=0, 1,NULL) as amount,
IF(s.prod_id=92, 2,NULL) as amount2,
IF(s.prod_id=116, 3,NULL) as amount3,
IF(s.prod_id=134, 4,NULL) as amount4
FROM table_user u
LEFT JOIN table_user_status s ON s.user_id = u.id
where s.prod_id = 0 OR s.prod_id = 92 OR s.prod_id = 117 OR s.prod_id = 134
-- GROUP BY u.id
order by u.id ASC
ich so etwas wie:
22 | Matt | 1|NULL|NULL|NULL
22 | Matt | NULL|2|NULL|NULL
Nach Gruppe von ID bekomme ich 22 MATT 1 NULL NULL NULL
und dann next record.
Am Ende muss ich Benutzer Group_concat für Daten wie 22 | Matt | 1,2 |
Dank!
Sie haben 116 in der SELECT und 117 in der WHERE. Ich denke, einer liegt falsch? – AjahnCharles