思路2:利用行转列,得到每个用户作答教育类和职业类问题的数量(子查询部分),对教育类和职业类作答数量都不为零的用户计数,两个方法都可以通过,对SQL底层不明确,思路2可能更耗费时间 SELECT count(*) as num FROM ( SELECT DISTINCT author_id, sum( CASE WHEN issue_type = 'Education' THEN 1 ELSE 0 END ) AS Education, sum( CASE WHEN issue_type = 'Career' THEN 1 ELSE 0 END ) AS Career FROM issue_tb AS a1 LEFT JOIN answer_tb AS a2 ON a1.issue_id = a2.issue_id GROUP BY author_id ) AS t1 WHERE Education != 0 AND Career != 0
点赞 评论

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务