我已经在MS Access中编写了一个查询。这是一个简化的版本:
SELECT IIf([category] LIKE "*abc*","DEF",category) AS category
, Month
, Sum(qty) AS [qty]
FROM [tableX]
GROUP BY category, Month 查询的目的是对不同类别的产品在不同月份的数量求和。我想将像ABC这样的类别聚合到一个名为abc的类别中。当我在Access中查看查询时,类别是正确聚合的,但是如果我在C#代码中从查询中进行选择,则不会进行聚合。
你知道为什么会发生这种事吗?
发布于 2009-08-12 09:31:44
使用Access数据库引擎的ANSI-92 Query Mode时,的通配符是%,而不是*。
Access数据库引擎的OLE DB提供程序(例如,通过ADO classic、ADO.NET等)总是使用ANSI92查询模式。
默认情况下,Access UI使用ANSI-89查询模式,但可以将其设置为ANSI-92查询模式。
DAO始终使用ANSI-89查询模式。
使用(不支持的) ALIKE关键字始终使用'%‘通配符,而与查询模式无关。
发布于 2009-08-12 09:35:40
如果它在Access中工作,那么尝试在Access中将其设置为查询,并在您的应用程序中使用它。
https://stackoverflow.com/questions/1265163
复制相似问题