mysql数据库表之间是怎么关联的请详解

mysql数据库表之间是怎么关联的请详解,第1张

left join

join

主外键是两种对表的约束。

例如:

学生表student(学号(id),姓名(name),性别(sex))

表内有:1,aa,女

课程表subject(课程编号(id),课程名(name))

表内有:1,语文

成绩表grade(成绩编号(id),学号(stu_id),课程号(sub_id),成绩(grade))

表内有:1,1,1,90

成绩表的学号就是学生表的学号相对应,并且为学生表的主键,这样就称成绩表中的学号是学生表的外键,同理,成绩表中的课程号是课程表的外键。

select from  student as s inner join subject as su on sustu_id=sid inner join grade as g on gsub_id=suid where 1

扩展资料:

注意事项

SQL 连接(JOIN) 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。连接的结果可以在逻辑上看作是由SELECT语句指定的列组成的新表。

左连接与右连接的左右指的是以两张表中的哪一张为基准,它们都是外连接。外连接就好像是为非基准表添加了一行全为空值的万能行,用来与基准表中找不到匹配的行进行匹配。

假设两个没有空值的表进行左连接,左表是基准表,左表的所有行都出现在结果中,右表则可能因为无法与基准表匹配而出现是空值的字段。

不同的 SQL JOIN可以使用的不同的 SQL JOIN 类型:

INNER JOIN:如果表中有至少一个匹配,则返回行

LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行

RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行

FULL JOIN:只要其中一个表中存在匹配,则返回行(MySQL不支持FULL JOIN)

例如:

mysql> select from access_log;

+-----+---------+-------+------------+

| aid | site_id | count | date       |

+-----+---------+-------+------------+

|   1 |       1 |    45 | 2016-05-10 |

|   2 |       3 |   100 | 2016-05-13 |

|   3 |       1 |   230 | 2016-05-14 |

|   4 |       2 |    10 | 2016-05-14 |

|   5 |       5 |   205 | 2016-05-14 |

|   6 |       4 |    13 | 2016-05-15 |

|   7 |       3 |   220 | 2016-05-15 |

|   8 |       5 |   545 | 2016-05-16 |

|   9 |       3 |   201 | 2016-05-17 |

+-----+---------+-------+------------+

9 rows in set

表与表之间是通过主外键链接的

可以通过‘数据库关系图’进行链接

将要连接的表选中,然后用鼠标拖动

例如

定义表Student、Course和SC之间的关系图。

要求:先要定义好三个表的主键SNO、CNO、(SNO,CNO)

(1)展开数据库“学生管理”节点,在“数据库关系图”上击右键,选择“新建数据库关系图”命令,d出新建数据库关系图向导,选择要添加到关系图中的表Student、Course和SC,这三个表将出现在新关系图窗口中。每个表显示包含的属性和定义的主键,拖动标题栏可以改变它们在窗口中的位置。

(2)将Student表的属性SNO拖动到SC表的SNO上,松开鼠标d出“创建关系”窗口,设置后单击“确定”按钮。在Student表和SC表之间会自动出现一条连线,说明创建关系成功。同样的方法可以创建Course表和SC表之间的关系。

(3)单击关闭按钮保存。

(4)试着修改或删除Student、Course和SC表中的数据,看看定义关系后有何作用。

以上就是关于mysql数据库表之间是怎么关联的请详解全部的内容,包括:mysql数据库表之间是怎么关联的请详解、SQL数据库的表与表之间的关系怎么连接(sql表与表之间如何建立关联)、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9828425.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存