mysql查询一对多和多对一
时间: 2023-09-06 14:13:25 浏览: 63
在MySQL中,一对多和多对一的查询可以通过使用JOIN语句或子查询来实现。
一对多关联查询可以使用LEFT JOIN语句来实现。例如,使用以下查询语句可以查询学生表(student)和课程表(course)的信息:SELECT s.name, c.c_name FROM student AS s LEFT JOIN course AS c ON c.s_id = s.id; [2这将返回学生的姓名以及他们所选的课程的名称。
多对一关联查询可以使用子查询来实现。例如,使用以下查询语句可以查询学生表(student)和课程表(course)的信息:SELECT s.name, (SELECT group_concat(course.c_name) FROM course WHERE course.s_id = s.id) FROM student AS s; [3这将返回学生的姓名以及他们所选的课程的名称,多个课程名称之间使用逗号分隔。
需要注意的是,这只是一种实现一对多和多对一查询的方法,具体的查询方式可能会根据数据表的结构和需求而有所不同。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [mysql一对多关联查询分页错误问题的解决方法](https://download.csdn.net/download/weixin_38722348/12824943)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [MySQL 一对多查询](https://blog.csdn.net/weixin_33331063/article/details/113119944)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]