存在两张表User,字段(id,name,age,class,sex(男|女)) Student表(id,class)
第一步:两张表根据class关联查询返回User *
第二部:返回user中的所有数据,如果use中的name,age数据值相同,则只查询出来sex值为男的数据
sql如何去重??
sql去重如何解决啊123
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 普通网友 2024-01-02 17:05关注
您可以使用以下 SQL 查询语句来实现您的需求:
第一步:根据
class字段关联查询返回User表:SELECT * FROM User u JOIN Student s ON u.class = s.class第二步:返回
User表中的所有数据,如果name和age数据值相同,则只查询出sex值为男的数据,并进行去重:SELECT DISTINCT u.* FROM User u JOIN Student s ON u.class = s.class WHERE (u.name, u.age) IN ( SELECT name, age FROM User GROUP BY name, age HAVING COUNT(*) > 1 ) AND u.sex = '男'上述查询语句使用了子查询来筛选出在
User表中具有相同name和age的记录,并且使用DISTINCT关键字来去重。只查询出sex值为男的数据。请根据您的具体数据库表名和字段名进行相应的修改。
解决 无用评论 打赏 举报