我有一个表(参与者),它有多个列,这些列都可能是不同的。在这个查询中特别感兴趣的两列是 userID 和 programID 我在这里有一个两部分的查询。
- 我希望能够获取在此表中多次出现的所有用户 ID 的列表。我该怎么做呢?
我希望能够获取相同用户 ID 出现在多个程序 ID 中的所有程序 ID 的计数。(在 2 个程序中出现相同用户 ID 的程序的 IE 计数,在 3 个程序中出现相同用户 ID 的程序的计数,等等......)例如:
programID: prog1 userID: uid1 userID: uid3 userID: uid12 programID: prog2 userID: uid3 userID: uid5 userID: uid14 userID: uid27 programID: prog3 userID: uid3 userID: uid7 userID: uid14 userID: uid30 programID: prog4 userID: uid1
预期结果:用户 ID 计数 = 2;程序 = 3 用户 ID 计数 = 3;程序 = 3
谁能帮我解决这个问题。
我当前的问题 1 代码是:
SELECT
WPP.USERID,
WPI.EMAIL,
WPI.FIRSTNAME,
WPI.LASTNAME,
WPI.INSTITUTION
FROM WEBPROGRAMPARTICIPANTS WPP
INNER JOIN WEBPERSONALINFO WPI
ON WPP.USERID = WPI.USERID
INNER JOIN WEBPROGRAMS WP
ON WPP.PROGRAMCODE = WP.PROGRAMCODE
WHERE
WP.PROGRAMTYPE IN ('1','2','3','4','5','6', '9', '10')
GROUP BY
WPP.USERID,
WPI.EMAIL,
WPI.FIRSTNAME,
WPI.LASTNAME,
WPI.INSTITUTION
HAVING COUNT(WPP.USERID) > 1
ORDER BY WPI.EMAIL