我们正在使用带有标准Sage 100 ERP环境的PVX / Sage ODBC连接器。司机正常工作。
SELECT InvoiceDate as TheColumn,
SUM(NonTaxableSalesAmt) as Total
FROM AR_InvoiceHistoryHeader
WHERE InvoiceDate <= {d[startdate]} AND InvoiceDate >= {d[enddate]}
GROUP BY TheColumn
SELECT {fn MONTH(InvoiceDate)} as TheColumn,
SUM(NonTaxableSalesAmt) as Total
FROM AR_InvoiceHistoryHeader
WHERE InvoiceDate <= {d[startdate]} AND InvoiceDate <= {d[enddate]}
GROUP BY TheColumn
SELECT {fn MONTH(InvoiceDate)} as TheColumn,
SUM(NonTaxableSalesAmt) as Total
FROM AR_InvoiceHistoryHeader
WHERE InvoiceDate <= {d[startdate]} AND InvoiceDate <= {d[enddate]}
GROUP BY {fn MONTH(InvoiceDate)}
澄清:我并不是专门为这个确切的用例寻找解决方案,而是列别名/ GROUP BY组合的一般解决方案。
答案 0 :(得分:0)
经过与Sage和ProvideX的长期反复,以下是GROUP BY与Sage MAS 100 ERP连接器的结论:由于Sage的定制,因此ProvideX文档对于Sage驱动程序并不准确。与Sage MAS 100 ERP一起使用的ODBC驱动程序不支持使用GROUP BY语句的别名或函数。 GROUP BY语句必须采用GROUP BY [实际列]的形式。
使用简单查询(没有GROUP BY的SELECT)的替代方法,以及1)在您的应用程序中执行GROUP BY操作或2)将数据作为传递查询导入Microsoft Access或其他DBMS,并在Access中执行复杂查询。