深圳市金黑网络技术有限公司始终坚持以用户需求为导向,提供安全、稳定、高效的产品和服务!
签到 · 搜索导航 · 服务热线 · 微信/手机:17817817816

深圳网站建设

查看: 514|回复: 0

mysql数据库教程内连接

[复制链接]

UID
1
贡献
844
金币
1540
主题
520
在线时间
333 小时
注册时间
2022-1-15
最后登录
2024-11-12
QQ
发表于 2022-11-28 11:55:06 | 514 | 0 | 显示全部楼层 |阅读模式
mysql数据库教程内连接

规则:返回两个表的公共记录
语法:
  1. -- 语法一
  2. select * from 表1 inner join 表2 on 表1.公共字段=表2.公共字段
  3. -- 语法二
  4. select * from 表1,表2 where 表1.公共字段=表2.公共字段
复制代码
例题
  1. -- inner join
  2. mysql> select * from stuinfo inner join stumarks on stuinfo.stuno=stumarks.stuno;
  3. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  4. | stuNo  | stuName  | stuSex | stuAge | stuSeat | stuAddress | examNo  | stuNo  | writtenExam | labExam |
  5. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  6. | s25303 | 李斯文        | 女      |     22 |       2 | 北京           | s271811 | s25303 |          80 |      58 |
  7. | s25302 | 李文才        | 男       |     31 |       3 | 上海          | s271813 | s25302 |          50 |      90 |
  8. | s25304 | 欧阳俊雄        | 男       |     28 |       4 | 天津           | s271815 | s25304 |          65 |      50 |
  9. | s25301 | 张秋丽         | 男       |     18 |       1 | 北京           | s271816 | s25301 |          77 |      82 |
  10. | s25318 | 争青小子        | 男       |     26 |       6 | 天津           | s271819 | s25318 |          56 |      48 |
  11. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  12. 5 rows in set (0.00 sec)

  13. -- 相同的字段只显示一次
  14. mysql> select s.stuno,stuname,stusex,writtenexam,labexam from stuinfo s inner join stumarks m on s.stuno=m.stuno;
  15. +--------+----------+--------+-------------+---------+
  16. | stuno  | stuname  | stusex | writtenexam | labexam |
  17. +--------+----------+--------+-------------+---------+
  18. | s25303 | 李斯文        | 女      |          80 |      58 |
  19. | s25302 | 李文才        | 男       |          50 |      90 |
  20. | s25304 | 欧阳俊雄        | 男       |          65 |      50 |
  21. | s25301 | 张秋丽         | 男       |          77 |      82 |
  22. | s25318 | 争青小子        | 男       |          56 |      48 |
  23. +--------+----------+--------+-------------+---------+
  24. 5 rows in set (0.00 sec)

  25. -- 使用where
  26. mysql> select * from stuinfo,stumarks where stuinfo.stuno=stumarks.stuno;
  27. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  28. | stuNo  | stuName  | stuSex | stuAge | stuSeat | stuAddress | examNo  | stuNo  | writtenExam | labExam |
  29. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  30. | s25303 | 李斯文        | 女      |     22 |       2 | 北京           | s271811 | s25303 |          80 |      58 |
  31. | s25302 | 李文才        | 男       |     31 |       3 | 上海          | s271813 | s25302 |          50 |      90 |
  32. | s25304 | 欧阳俊雄        | 男       |     28 |       4 | 天津           | s271815 | s25304 |          65 |      50 |
  33. | s25301 | 张秋丽         | 男       |     18 |       1 | 北京           | s271816 | s25301 |          77 |      82 |
  34. | s25318 | 争青小子        | 男       |     26 |       6 | 天津           | s271819 | s25318 |          56 |      48 |
  35. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  36. 5 rows in set (0.00 sec)
复制代码
多学一招:
  1. -- 1、内连接中inner可以省略
  2. select * from 表1  join 表2 on 表1.公共字段=表2.公共字段

  3. mysql> select * from stuinfo join stumarks on stuinfo.stuno=stumarks.stuno;
  4. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  5. | stuNo  | stuName  | stuSex | stuAge | stuSeat | stuAddress | examNo  | stuNo  | writtenExam | labExam |
  6. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  7. | s25303 | 李斯文        | 女      |     22 |       2 | 北京           | s271811 | s25303 |          80 |      58 |
  8. | s25302 | 李文才        | 男       |     31 |       3 | 上海          | s271813 | s25302 |          50 |      90 |
  9. | s25304 | 欧阳俊雄        | 男       |     28 |       4 | 天津           | s271815 | s25304 |          65 |      50 |
  10. | s25301 | 张秋丽         | 男       |     18 |       1 | 北京           | s271816 | s25301 |          77 |      82 |
  11. | s25318 | 争青小子        | 男       |     26 |       6 | 天津           | s271819 | s25318 |          56 |      48 |
  12. +--------+----------+--------+--------+---------+------------+---------+--------+-------------+---------+
  13. 5 rows in set (0.00 sec)

  14. -- 如何实现三表查询
  15. select * from 表1 inner join 表2 on 表1.公共字段=表2.公共字段 inner join 表3 on 表2.公共字段=表3.公共字段

  16. -- 表连接越多,效率越低
复制代码
思考:
  1. select * from 表1 inner join 表2 on 表1.公共字段=表2.公共字段

  2. select * from 表2 inner join 表1 on 表1.公共字段=表2.公共字段   一样吗?

  3. 答:一样的
复制代码

楼主热帖

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

快速回复 返回顶部 返回列表