当我尝试从访问中提取数据时,Excel 没有显示我的联合查询
Posted
技术标签:
【中文标题】当我尝试从访问中提取数据时,Excel 没有显示我的联合查询【英文标题】:Excel isn't showing my union query when I try to pull in data from access 【发布时间】:2019-11-07 22:17:45 【问题描述】:我有 2 个查询正在提取相似类型的数据,因此我使用了 UNION ALL 查询来加入它们。但是,现在当我从 Excel 工作簿上的 Access 中提取数据时,查询不会显示。如何在我的 Excel 中显示联合查询??
供参考:
SELECT yyy.Sold_Date, yyy.Sold_Year, yyy.Sold_Month, yyy.Sold_Week, yyy.Pricing_System, yyy.Deal_Orientation, Count(yyy.Customer_Name) AS CountOfCustomer_Name, Sum(yyy.MeterCount) AS SumOfMeterCount, Avg(yyy.Term) AS AvgOfTerm, Sum(yyy.AMWh) AS SumOfAMWh, Sum(yyy.TMWh) AS SumOfTMWh, yyy.Flow_Start, yyy.Flow_End, Sum(yyy.Unit_Margin) AS SumOfUnit_Margin, Sum(yyy.Term_GM) AS SumOfTerm_Margin, 'yyy' AS D2DType
FROM yyy
WHERE yyy.Pricing_System = 'm'
GROUP BY yyy.Sold_Date, yyy.Sold_Year, yyy.Sold_Month, yyy.Sold_Week, yyy.Pricing_System, yyy.Deal_Orientation, yyy.Flow_Start, yyy.Flow_End
UNION ALL
SELECT xxx.Sold_Date, xxx.Sold_Year, xxx.Sold_Month, xxx.Sold_Week, xxx.Pricing_System, xxx.Deal_Orientation, Count(xxx.Business_Name) AS CountOfCustomer_Name, Sum(xxx.MeterCount) AS SumOfMeterCount, Avg(xxx.Term) AS AvgOfTerm, Sum(xxx.AMWh) AS SumOfAMWh, Sum(xxx.TMWh) AS SumOfTMWh, xxx.Flow_Start, xxx.Flow_End, Sum(xxx.Unit_Margin) AS SumOfUnit_Margin, Sum(xxx.Term_Margin) AS SumOfTerm_Margin, 'xxx' AS D2DType
FROM xxx
WHERE xxx.Pricing_System = 'm'
GROUP BY xxx.Sold_Date, xxx.Sold_Year, xxx.Sold_Month, xxx.Sold_Week, xxx.Pricing_System, xxx.Deal_Orientation, xxx.Flow_Start, xxx.Flow_End, 'D2DType' ;
【问题讨论】:
我以前遇到过这个。我认为如果您在 Access 中使用 Nz 函数,那么 Excel 不会将其识别为合法查询。见此链接:[answers.microsoft.com/en-us/msoffice/forum/all/… 它说找不到线程:/ 我在下面的回答中记得另一个解决方案。希望它对你有用。 【参考方案1】:从联合查询中进行另一个选择查询。选择所有列,这个新查询将在 Excel 获取数据中可见。
【讨论】:
【参考方案2】:这在类似情况下对我有用。使用“来自其他来源”选项来获取此处显示的外部数据:
然后选择“来自 Microsoft Query”。在选择数据源框中滚动选项并选择 MS Access 数据库。导航到 Access 数据库的位置并在左侧窗格中选择。 “查询向导”窗口应该会弹出并显示您可以连接到的可用查询和表。联合查询应该在此处可用。逐步执行后续选项,它将像往常一样建立连接。我不确定为什么它没有在“来自访问”选项中显示联合查询。
【讨论】:
不幸的是,这对我也不起作用,不知道为什么..以上是关于当我尝试从访问中提取数据时,Excel 没有显示我的联合查询的主要内容,如果未能解决你的问题,请参考以下文章