sql连表查询学生表和学生兴趣表,重复学生姓名的只保留一条
时间: 2024-05-04 10:16:22 浏览: 11
可以使用以下SQL语句实现:
```
SELECT DISTINCT s.name, i.interest
FROM students s
JOIN interests i ON s.id = i.student_id
ORDER BY s.name;
```
其中,DISTINCT关键字可以去除重复的学生姓名,JOIN可以将学生表和兴趣表联合查询,s.name和i.interest分别表示查询出的学生姓名和兴趣爱好,s.id=i.student_id表示两张表之间的关联条件,ORDER BY s.name表示按照学生姓名进行排序。
相关问题
sql 查询学生表中姓名相同的学生
你好!针对你的问题,可以使用以下 SQL 查询语句:
```
SELECT 姓名, COUNT(*)
FROM 学生表
GROUP BY 姓名
HAVING COUNT(*) > 1;
```
这条语句会返回学生表中姓名相同的学生以及他们的数量。其中,“GROUP BY” 语句会按照姓名进行分组,“COUNT(*)” 会统计每个分组中的记录数,“HAVING” 会筛选出记录数大于 1 的分组,也就是姓名相同的学生。
mvc对学生表课程表连表查询的SQL语句
下面是一个基于MVC模式的学生表和课程表连表查询的SQL语句:
```sql
SELECT s.name AS student_name, c.name AS course_name, sc.score
FROM student_course sc
INNER JOIN student s ON s.id = sc.student_id
INNER JOIN course c ON c.id = sc.course_id
WHERE s.id = [student_id];
```
该SQL语句使用了三个表,分别是学生表、课程表和学生课程表。通过INNER JOIN将这三个表连接起来,然后通过WHERE语句限定查询的学生ID。最后,我们选择了学生姓名、课程名称和成绩作为查询结果。