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]
결과되어야 할 때 : SubSonic2.2 결과에
SELECT ProductID AS ID, MAX(Price) AS MaxPrice
FROM [Orders]
GROUP BY ProductID
이 정확하지만 Subsonic3에서, GROUP BY 문은 사라지고 쿼리는 한 행만 반환합니다.
내 SqlQuery 표현식이 정확합니까? 아니면 SubSonic3의 버그입니까? 당신의 GROUPBY 당신의 선택 안에 있기 때문에 정확한 구문에 대한 완전히 확실하지
답장을 보내 주셔서 감사합니다.하지만 각 제품의 최대 가격이 필요합니다. 쿼리를 다시 작성할 수 있습니다. SqlQuery query1 = new Select(). From ("Orders"); query1.Aggregates = new List { new 집계 ("ProductID", "ID", AggregateFunction.GroupBy), 새 집계 ("Price", AggregateFunction.Max)}; MessageBox.Show (query1.ToString()); 다시 같은 결과가 나오면 모든 제품의 최대 가격을 얻기 위해 'GROUP BY ProductID'sql 절이 필요합니다. –
aris
문제는 SqlQuery가 SQL 쿼리에서 'GROUP BY ProductID'부분을 생성하지 않는다는 것입니다. – aris