简答题】已知表t_role有以下字段role_id,role_name,role_power,表t_user有以下字段user_id,user_name,user_pwd,user_age,user_sex,user_role。其中user_role是外键,关联t_role表的主键role_id.请写sql语句,要求连表查询每种角色的人数,即使该角色没有对应的用户,也要显示人数为0. (5分) 简答题】已知表t_role有以下字段role_id,role_name,role_power,表t_user有以下字段user_id,user_name,user_pwd,user_age,user_sex,user_role。其中user_role是外键,关联t_role表的主键role_id.请写sql语句,要求连表查询两张表所有有关联的数据。 (5分) 3.【简答题】已知表t_user有以下字段user_id,user_name,user_pwd,user_age,user_sex。请写sql语句,查询男性和女性的分别的人数是多少,如果性别值为null,则不需要统计
时间: 2023-05-27 16:04:32 浏览: 124
(5分)
1. 查询每种角色的人数,包括没有对应用户的角色:
SELECT
t_role.role_name,
COUNT(t_user.user_id) as user_count
FROM
t_role
LEFT JOIN
t_user
ON
t_role.role_id = t_user.user_role
GROUP BY
t_role.role_name;
2. 查询连表查询两张表所有有关联的数据:
SELECT
t_user.*,
t_role.role_name
FROM
t_user
INNER JOIN
t_role
ON
t_user.user_role = t_role.role_id;
3. 查询男性和女性的分别的人数,不包括性别为null的人数:
SELECT
user_sex,
COUNT(user_id) as user_count
FROM
t_user
WHERE
user_sex IS NOT NULL
GROUP BY
user_sex;
阅读全文
相关推荐








