Sql Can';t在三个表和联接操作相关的问题上找不到解决方案
因此,我无法解决以下问题。提供了三个表格: 我需要使用join编写一个代码,以便列出所有对和朋友对的全名。我只知道可能需要两个连接,其中一个是自连接。我尝试将persons表与friends表联接,但其中一列的结果是name,另一列是and id,我不知道如何进行两个连续联接,以便每个名称都有相应的friends名称。以下是表格信息:Sql Can';t在三个表和联接操作相关的问题上找不到解决方案,sql,join,Sql,Join,因此,我无法解决以下问题。提供了三个表格: 我需要使用join编写一个代码,以便列出所有对和朋友对的全名。我只知道可能需要两个连接,其中一个是自连接。我尝试将persons表与friends表联接,但其中一列的结果是name,另一列是and id,我不知道如何进行两个连续联接,以便每个名称都有相应的friends名称。以下是表格信息: CREATE TABLE persons ( id INTEGER PRIMARY KEY AUTOINCREMENT, fullname TEXT, age I
CREATE TABLE persons (
id INTEGER PRIMARY KEY AUTOINCREMENT,
fullname TEXT,
age INTEGER);
INSERT INTO persons (fullname, age) VALUES ("Bobby McBobbyFace", "12");
INSERT INTO persons (fullname, age) VALUES ("Lucy BoBucie", "25");
INSERT INTO persons (fullname, age) VALUES ("Banana FoFanna", "14");
INSERT INTO persons (fullname, age) VALUES ("Shish Kabob", "20");
CREATE table hobbies (
id INTEGER PRIMARY KEY AUTOINCREMENT,
person_id INTEGER,
name TEXT);
INSERT INTO hobbies (person_id, name) VALUES (1, "drawing");
INSERT INTO hobbies (person_id, name) VALUES (2, "dancing");
INSERT INTO hobbies (person_id, name) VALUES (3, "skating");
INSERT INTO hobbies (person_id, name) VALUES (4, "coding");
CREATE table friends (
id INTEGER PRIMARY KEY AUTOINCREMENT,
person1_id INTEGER,
person2_id INTEGER);
INSERT INTO friends (person1_id, person2_id)
VALUES (1, 4);
INSERT INTO friends (person1_id, person2_id)
VALUES (2, 3);
你只是在找两个连接点吗
select p1.fullname, p2.fullname
from friends f join
persons p1
on f.person1_id = p1.id join
persons p2
on f.person2_id = p2.id;
你只是在找两个连接点吗
select p1.fullname, p2.fullname
from friends f join
persons p1
on f.person1_id = p1.id join
persons p2
on f.person2_id = p2.id;
感谢您的规格和代码。请在代码问题中给出一个--cut&paste&runnable代码;具有期望和实际输出的示例输入(包括逐字错误消息);标签和清晰的说明和解释。为你能做的部分给出代码。但是——(显然——)这是一个常见问题。在考虑发帖之前,请始终用谷歌搜索任何错误消息,以及你的问题/问题/目标的许多清晰、简洁和准确的措辞,包括和不包括你的特定字符串/名称;阅读许多答案。如果你发布一个问题,用一句话作为标题。请参阅文本上方的投票箭头和鼠标。可能重复感谢规范和代码。请在代码问题中给出一个--cut&paste&runnable代码;具有期望和实际输出的示例输入(包括逐字错误消息);标签和清晰的说明和解释。为你能做的部分给出代码。但是——(显然——)这是一个常见问题。在考虑发帖之前,请始终用谷歌搜索任何错误消息,以及你的问题/问题/目标的许多清晰、简洁和准确的措辞,包括和不包括你的特定字符串/名称;阅读许多答案。如果你发布一个问题,用一句话作为标题。请参阅文本上方的投票箭头鼠标(&S)。可能重复的