> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 다대다 및 일대일 관계를 만드는 방법

MySQL에서 다대다 및 일대일 관계를 만드는 방법

WBOY
풀어 주다: 2023-05-26 22:55:19
앞으로
1997명이 탐색했습니다.

1. 다대다 만들기

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;
로그인 후 복사

4. 학생 1이 선택한 과목 쿼리

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;
로그인 후 복사

6. id=2를 선택한 쿼리 math

MySQL에서 다대다 및 일대일 관계를 만드는 방법

2. MySQL은 일대일 관계를 생성합니다

1. 사용자 테이블 생성: MySQL에서 다대다 및 일대일 관계를 만드는 방법

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);
로그인 후 복사

User 정보 테이블:

SELECT courses.id,courses.name FROM courses 

INNER JOIN stu_cour ON stu_cour.course_id=courses.id

INNER JOIN students ON students.id= 1 

and students.id = stu_cour.stu_id;
로그인 후 복사

2. 데이터 삽입

SELECT students.name FROM students 

INNER JOIN stu_cour ON stu_cour.stu_id =students.id

INNER JOIN courses ON courses.id= 2 

and stu_cour.course_id = courses.id;
로그인 후 복사

그 사람의 모든 정보 조회:

CREATE TABLE users (

id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,

name VARCHAR(50) NOT NULL

)ENGINE=InnoDB DEFAULT CHARSET=utf8;
로그인 후 복사

위 내용은 MySQL에서 다대다 및 일대일 관계를 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿