1
我正在创建一个带有聚合的简单查询。这个例子是:Subsonic 3查询 - 聚合错误
string query = new SubSonic.Query.Select(
SubSonic.Query.Aggregate.GroupBy("ProductID", "ID"),
SubSonic.Query.Aggregate.Max("Price", "MaxPrice")
).From("Orders").ToString();
SQL结果是:
SELECT ProductID AS ID, MAX(Price) AS MaxPrice
FROM [Orders]
时,结果应该是:
SELECT ProductID AS ID, MAX(Price) AS MaxPrice
FROM [Orders]
GROUP BY ProductID
在SubSonic2.2结果是正确的,但在Subsonic3,该集团BY语句消失并且查询只返回一行。
我的SqlQuery表达是否正确,或者它是SubSonic3中的错误?
感谢您的回复,但我需要每个产品的最高价格。 我可以重写查询: SqlQuery query1 = new Select()。From(“Orders”); query1.Aggregates = new列表 { 新聚合(“ProductID”,“ID”,AggregateFunction.GroupBy), 新聚合(“Price”,AggregateFunction.Max)}; MessageBox.Show(query1.ToString()); 但同样的结果,我需要'GROUP BY ProductID'sql语句来获得每个产品的最大价格。 –
aris
2010-08-05 16:39:38
问题是SqlQuery不会在SQL查询中生成'GROUP BY ProductID'部分 – aris 2010-08-05 16:41:45