学生存储学生姓名和朋友商店之间的学生关系列表。来自多对多关系的查询
Create table Student (
id int NOT NULL AUTO_INCREMENT,
name varchar(35),
PRIMARY KEY (id)
);
insert into Student (name) values ('John');
insert into Student (name) values ('Kelly');
insert into Student (name) values ('Mary');
Create table Friend (
id_from int NOT NULL REFERENCES Student(id),
id_to int NOT NULL REFERENCES Student(id),
PRIMARY KEY (id_from, id_to)
);
insert into Friend (id_from,id_to) values (1, 3);
insert into Friend (id_from,id_to) values (1, 2);
insert into Friend (id_from,id_to) values (3, 2);
如何查询“John”的所有朋友,例如,在MySql中?架构在这里。
http://sqlfiddle.com/#!9/aeacd/1
你有没有尝试过的东西?如果你有什么地方迷路? – ArchiFloyd
Select S.name FROM Student S JOIN Friend F ON S.id = F.id_from WHERE S.name ='John'。应该是这样的。但是这返回两个“约翰”,而不是他的朋友。 – user697911