MySQL如何创建多对多和一对一关系
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,这篇文章主要介绍"MySQL如何创建多对多和一对一关系",在日常操作中,相信很多人在MySQL如何创建多对多和一对一关系问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"M
千家信息网最后更新 2025年01月23日MySQL如何创建多对多和一对一关系
这篇文章主要介绍"MySQL如何创建多对多和一对一关系",在日常操作中,相信很多人在MySQL如何创建多对多和一对一关系问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"MySQL如何创建多对多和一对一关系"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
一、创建多对多
1.学生表
create table students ( id int not null primary key auto_increment, name varchar(45) not null )engine=innodb default charset=utf8;
2.课程表
create table courses ( id int not null primary key auto_increment, name varchar(45) not null )engine=innodb default charset=utf8;
3.中间表
create table stu_cour ( id int not null primary key auto_increment course_id int not null, stu_id int not null, constraint cour foreign key(course_id) references courses(id), constraint stu foreign key(stu_id) references students(id) )engine=innodb default charset=utf8;
4.插入数据
insert into students values (0,"小王");insert into students values (0,"小宋");insert into students values (0,"小李");insert into courses values (0,"语文");insert into courses values (0,"数学");insert into courses values (0,"英语");insert into stu_cour values (0,1,1);insert into stu_cour values (0,1,2);insert into stu_cour values (0,1,3);insert into stu_cour values (0,2,1);insert into stu_cour values (0,2,3);insert into stu_cour values (0,3,2);insert into stu_cour values (0,3,3);
5.查询学生1选了哪些科目
SELECT courses.id,courses.name FROM courses INNER JOIN stu_cour ON stu_cour.course_id=courses.idINNER JOIN students ON students.id= 1 and students.id = stu_cour.stu_id;
6.查询id=2数学被谁选了
SELECT students.name FROM students INNER JOIN stu_cour ON stu_cour.stu_id =students.idINNER JOIN courses ON courses.id= 2 and stu_cour.course_id = courses.id;
二、MySQL 创建一对一关系
1.一对一
创建用户表:
CREATE TABLE users (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50) NOT NULL)ENGINE=InnoDB DEFAULT CHARSET=utf8;
用户信息表:
CREATE TABLE users_info (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,age int NOT NULL,phone varchar(11) NOT NULL,user_id int not null,constraint user_info foreign key(user_id) references users(id))ENGINE=InnoDB DEFAULT CHARSET=utf8;
2.插入数据
insert into users values (0,"小王");insert into users values (0,"小宋");insert into users_info values (0,12,'13812345678',1);insert into users_info values (0,14,'13812345679',2);
查询人的全部信息:
select * from users inner join users_info onusers_info.user_id =users.id;
到此,关于"MySQL如何创建多对多和一对一关系"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
一对一
学习
查询
信息
学生
数学
数据
更多
用户
小宋
小王
帮助
实用
接下来
文章
方法
理论
知识
科目
篇文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
天堂w服务器维护时间
无锡软件开发开发商
我的世界服务器军事模组对决
2015网络安全漏洞事件
在云服务器上启动服务
软件开发r7和i7的区别在哪
数据库表格提示列无效
查看数据库表创建
惠州商城软件开发价格实惠
产品经理对于网络技术的认识
网格化管理系统服务器安装
阿里云数据库主从复制
网络技术服务质量保障
网络安全赛道决赛
启明星辰数据库审计
智能化软件开发质量保证
5g液冷服务器生产商家
潮州自主可控软件开发报价行情
28转行嵌入式软件开发
pdf数据库表格
世界上最优异的数据库系统
国家网络安全指数中国
网络安全等级保护安全案例
中专网络安全怎么样
巴中网络安全和信息化工作会
建立一份客户信息数据库
建设5g网络安全防御
超微架构服务器
互联网科技感强的大学
山东泰山网络安全