【发布时间】:2019-11-25 09:41:05
【问题描述】:
我有一张销售订单表,该表与销售组织的货币和成本计算工厂相关联,该工厂可能使用不同的货币,也可能不使用不同的货币。我有一个汇率表,列出了不同货币对的汇率。我需要将汇率表链接到销售货币并单独链接到成本货币。当我尝试链接交换表两次时,我收到错误消息我收到此错误 -
对象“dbo.VW_CurrrentExchange”和“dbo.VW_CurrentExchange”在 FROM 子句具有相同的公开名称。使用相关名称 区分它们。
我尝试了两次链接表格,给表格一个额外的名称(就像在 Access 中一样,例如,dbo.VW_CurrentExchange_1)并简单地对 Access 中的内容进行建模。
select dbo.SalesOrderItems.DV, dbo.SalesOrderItems.SOrg, dbo.SalesOrderItems.SalesDoc, dbo.SalesOrderItems.item, dbo.SalesOrderItems.itca, dbo.SalesOrderItems.rj, dbo.SalesOrderItems.Createdon1 as ItemCreation, dbo.SalesOrderItems.[Sold-topt] as SoldTo, dbo.SalesOrderItems.OrderQuantity, dbo.SalesOrderItems.Cumulconfirmedqty as CCQSU, dbo.SalesOrderItems.SU, dbo.SalesOrderItems.Cumulconfirmedqty1 as CCQBU, dbo.SalesOrderItems.BUn, dbo.SalesOrderItems.Material, dbo.SalesOrderItems.Plnt as Plant, dbo.SalesOrderItems.Reqdlvdt as RDD, dbo.SalesOrderItems.Netprice, dbo.SalesOrderItems.per, dbo.SalesOrderItems.RSD, dbo.SalesOrderItemStatus.DS , dbo.SalesOrderItemStatus.DS1 , dbo.SalesOrderItemStatus.DS2 , dbo.SalesOrderItemStatus.DS3, dbo.SalesOrderItemStatus.GM, dbo.SalesOrderItemStatus.OvCS, dbo.SalesOrderItemStatus.OS, dbo.SalesOrderItemStatus.DB, dbo.SalesOrderItemStatus.DB1, dbo.SalesOrderItemStatus.GS, dbo.SalesOrderItemStatus.BS, dbo.SalesOrderItemStatus.Rejectionstatus, dbo.customers.Name3, dbo.MARA.MaterialDescription, dbo.MARA.MatlGroup, dbo.MARC.ProfitCtr, dbo.VW_CurrentExchange.Exchange as PExch, dbl.VW_CurrentExchange.exchange as CExch
from dbo.SalesOrderItems join dbo.SalesOrderItemStatus on dbo.SalesOrderItems.salesdoc = dbo.SalesOrderItemStatus.salesdoc and dbo.salesorderitems.item = SalesOrderItemStatus.item join dbo.VW_CurrentExchange on dbo.salesorderitems.curr = dbo.vw_currentexchange.Currency2 join dbo.customers on dbo.SalesOrderItems.[Sold-topt]=dbo.customers.Customer join dbo.MARA on dbo.SalesOrderItems.Material = dbo.MARA.Material join dbo.MARC on dbo.SalesOrderItems.Material = dbo.MARC.material and dbo.SalesOrderItems.plnt=dbo.MARC.Plnt join dbo.MBEW on dbo.SalesOrderItems.Material= dbo.MBEW.Material and dbo.SalesOrderItems.plnt=dbo.MBEW.ValA join dbo.Plants on dbo.SalesOrderItems.plnt = dbo.Plants.Plnt join dbo.VW_CurrentExchange on dbo.SalesOrderItems.curr = dbo.VW_CurrentExchange.Currency2
order by dbo.salesorderitems.Createdon1 desc
希望得到列出的字段,包括 PExch 和 CExch,但得到 Msg 1013,
16 级,状态 1,第 1 行对象 FROM 中的“dbo.VW_CurrentExchange”和“dbo.VW_CurrentExchange” 子句具有相同的公开名称。使用相关名称 区分它们。
【问题讨论】:
-
请对表格使用不同的别名并尝试相同的代码
-
您能否发布在您使用 VW_CurrentExchange_1 别名时不起作用的查询?
标签: sql-server ms-access migrate