SQL加入初学者
我对sql非常陌生,我正在努力创建一个查询。我有两张桌子: 性格 特征 名字 姓氏 性别 夫妻 对联 女性 马莱德 现在我试着这样把它组合起来: 女性名字 女性名字 男性名字 男性名字 我试过:SQL加入初学者,sql,join,Sql,Join,我对sql非常陌生,我正在努力创建一个查询。我有两张桌子: 性格 特征 名字 姓氏 性别 夫妻 对联 女性 马莱德 现在我试着这样把它组合起来: 女性名字 女性名字 男性名字 男性名字 我试过: SELECT character.firstname AS femaleFName, character.lastname AS femaleLName FROM Couple INNER JOIN Character ON Character.characterID = Couple.femaleID
SELECT character.firstname AS femaleFName, character.lastname AS femaleLName
FROM Couple INNER JOIN Character ON Character.characterID = Couple.femaleID
但是现在我正在为第二次加入而挣扎。您所要做的就是再次加入表。要做到这一点,您必须提供别名,以免混淆表
SELECT
cf.firstname AS femaleFName, cf.lastname AS femaleLName,
mf.firstname AS maleFName, mf.lastname AS maleLName
FROM Couple
INNER JOIN Character AS cf ON cf.characterID = Couple.femaleID
INNER JOIN Character AS mf ON mf.characterID = Couple.maleID
关键字AS不是必需的,可以省略。添加另一个连接,如下所示。这里c是用于区分第二个联接的表别名
SELECT character.firstname AS femaleFName, character.lastname AS femaleLName
FROM character INNER JOIN Couple ON Character.characterID = Couple.femaleID
INNER JOIN Couple c ON Character.characterID = c.maleID
您需要使用自联接来获得所需的结果。根据需要使用以下查询获取结果
Select cf.firstname as femaleFName,
cf.lastname as femaleLName,
cm.firstname as maleFName,
cm.lastname as maleLName
from Couple c
inner join Character cf on c.femaleID = cf.characterID
inner join Character cm on c.maleID= cm.characterID
我希望这对你有帮助
谢谢