微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何更正此SQL连接的相关名称?

我需要一个连接,从两个不同的表中产生三个具有相同名称的字段.当我尝试运行我的SQL查询,VS给我以下错误.

The objects “Politicalfigures” and “Politicalfigures” in the FROM clause have the same exposed names. Use correlation names to distinguish them.

我一直在尝试使用“AS”来区分这些字段,但是我没有找到一个可行的解决方案.这是我正在运行的SQL查询

SELECT Countries.Name AS Country,Politicalfigures.Name AS President,Politicalfigures.Name AS VicePresident FROM Countries
LEFT OUTER JOIN Politicalfigures ON Countries.President_Id = Politicalfigures.Id
LEFT OUTER JOIN Politicalfigures ON Countries.VicePresident_Id = Politicalfigures.Id

如果从代码中不明显,这些是表.

>国家:Id,Name,President_Id,VicePresident_Id.
>政治图:Id,Name.
>参加表:国家,总统,副总统

(请注意,我的应用程序中的表和字段具有不同的名称,我将它们进行概括,以使此示例更清晰,并希望与其他人更相关.)

(我使用的工具是Visual Web Developer 2010 Express和sql Server 2008 Express.)

解决方法

为每个参考政治图则使用表别名:
SELECT 
  Countries.Name AS Country,P.Name AS President,VP.Name AS VicePresident
FROM
  Countries
  LEFT OUTER JOIN Politicalfigures AS P ON Countries.President_Id = P.Id
  LEFT OUTER JOIN Politicalfigures AS VP ON Countries.VicePresident_Id = VP.Id

原文地址:https://www.jb51.cc/mssql/82012.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐