我得到一个“使用UNION,INTERSECT或EXCEPT操作符合并的所有查询在其目标列表中必须具有相同数量的表达式”。SQL QUery,Insert,Union和Join
INSERT INTO dbo.FactInternetSales (
ProductKey
,CustomerKey
,DateKey
,OrderQuantity
,UnitPrice
,UnitPriceDiscount
,TaxAmt
,Freight
)
SELECT ProductKey
FROM dbo.dimProduct
UNION ALL
SELECT CustomerKey
FROM dbo.dimCustomer
UNION ALL
SELECT DateKey
FROM dbo.dimDate
UNION ALL
SELECT D.OrderQty
,D.UnitPrice
,D.UnitPriceDiscount
,H.TaxAmt
,H.Freight
FROM AdventureWorksLT2008.SalesLT.SalesOrderDetail AS D
FULL JOIN AdventureWorksLT2008.SalesLT.SalesOrderHeader H ON D.SalesOrderID = H.SalesOrderID
我不明白,你的代码显示不正确的语法。我明白我得到的错误,但不能解决问题,而试图将其插入表 – cnayak
看到更新,这工作。你也可以使用加入,如果他们有相同的列 – TheGameiswar
谢谢我能够得到我想要的东西从你给的概念。我删除了union all,并使用了cte1,cte2,cte3,cte4来获取Productkey,CustomerKey,DateKey的不同列 – cnayak