【发布时间】:2016-06-03 01:17:33
【问题描述】:
我正在尝试运行下面的查询,我得到:
使用多值字段无法执行查询、无效操作或语法
这里的所有列都是匹配的,并且所有值都是相同的数据类型。我似乎无法在网上找到我理解的信息。有人可以帮忙吗?
SELECT
fq.fk_spEngineerID,
fq.spQuoteID,
fq.spOrderID,
fq.BU,
fq.fk_spProductTypeID,
fq.fk_spCompanyID,
fq.fk_spOfficeID
FROM (
SELECT
fk_spEngineerID,
spQuoteID,
NULL AS spOrderID,
BU,
fk_spProductTypeID,
fk_spCompanyID,
fk_spOfficeID
FROM FactQuote
UNION ALL
SELECT
fk_spEngineerID,
NULL AS spQuoteID,
spOrderID,
BU,
fk_spProductTypeID,
fk_spCompanyID,
fk_spOfficeID
FROM FactOrder
) AS fq
GROUP BY
fq.fk_spEngineerID,
fq.spQuoteID,
fq.spOrderID,
fq.BU,
fq.fk_spProductTypeID,
fq.fk_spCompanyID,
fq.fk_spOfficeID;
此查询运行差异在于数据源是查询而不是表
select
fq.fk_spEngineerID,
fq.spQuoteID,
fq.spOrderID,
fq.BU,
fq.spProductTypeID,
fq.fk_spCompanyID,
fq.fk_spOfficeID
From (
Select
fk_spEngineerID,
spQuoteID,
"" as spOrderID,
BU,
spProductTypeID,
fk_spCompanyID,
fk_spOfficeID,
From QuotestatsSubQuery
Union All
Select
fk_spEngineerID,
"" as spQuoteID,spOrderID,
BU,
spProductTypeID,
fk_spCompanyID,
fk_spOfficeID
From OrderstatsSubQuery
) as fq
Group By
fq.fk_spEngineerID,
fq.spQuoteID,
fq.spOrderID,
fq.BU,
fq.spProductTypeID,
fq.fk_spCompanyID,
fq.fk_spOfficeID;
【问题讨论】:
-
OP - 你还在吗?您的底部查询中有语法错误。这两种说法有什么区别?第二个是第一个的来源还是反之亦然?通常这个错误出现在复杂的查询中,引擎无法找到具体的错误。