我有一张users
,inductions
和的表格user_inductions
。
- 该
users
表有id
andname
, - 该
inductions
表有id
和name
, 和 user_inductions
有和。_id
_user_id
induction_id
我想返回一份所有诱导和做过诱导的人的列表。但是,我已经这样做了,因为我希望创建一个如下所示的表格。我不确定如何编辑查询,所以我可以按我的意愿取回信息。
------------------------------------------------------------------------------------
| name | tennis | cricket | rugby | squash | football | Table tennis | etc |
------------------------------------------------------------------------------------
| Bob | 0 | 1 | 0 | 1 | 1 | 0 | |
------------------------------------------------------------------------------------
| paul | 1 | 1 | 1 | 1 | 0 | 0 | |
------------------------------------------------------------------------------------
我想遍历数据,以便在顶部获得归纳列表,然后每个用户如果已被引导到该主题,则以 1 下降,如果没有,则以 0 下降。我有几个查询,但他们只返回所有用户只返回他们所做的归纳或归纳和做过的人。
例如:
SELECT CONCAT( `f_name` , ' ', `l_name` ) AS user, GROUP_CONCAT( pmainductions.name
ORDER BY pmainductions.id ) AS induction
FROM users
LEFT JOIN pmainduction_user ON users.id = pmainduction_user.user_id
LEFT JOIN pmainductions ON pmainductions.id = pmainduction_user.pmainduction_id
GROUP BY users.id
这会产生
bob | cricket,squash,football
paul| tennis,cricket,rugby,squash
任何帮助,将不胜感激。谢谢 :)