Запрос с помощью SUM с использованием SubSonic - PullRequest
1 голос
/ 08 мая 2009

Я новичок в Subsonic, я хочу спросить, как сделать запрос с помощью SUM?

Я знаю, как запросить условие, например, ниже:

Query qryCurOpcode = Station.CreateQuery()
    .WHERE("PRODLINE=PIECERATE_prodline")
    .AND("STATIONID=STNID")
    .AND("SHIFT=PIECERATE_shift");

IDataReader rdrCurOpcode = qryCurOpcode.ExecuteReader();

while (rdrCurOpcode.Read())
{
    PIECERATE_CurOpcode = rdrCurOpcode[Station.Columns.Curopcode].ToString();
}

а как сделать запрос с суммой?

Спасибо! Халим

Ответы [ 2 ]

2 голосов
/ 08 мая 2009

Вот один из способов сделать это:

int sum = (int)new Query("Station").GetSum("Shift");

Вы можете получить больше примеров из: SubSonic Aggregate Queries

0 голосов
/ 08 мая 2009

Если вы хотите использовать агрегат, такой как сумма, то лучший способ - использовать агрегаты Subsonic :). Для полного списка примеров проверьте SubSonicProject

Вот несколько примеров, взятых прямо по ссылке выше.

 double result = new
    Select(Aggregate.Avg("UnitPrice"))
    .From(Product.Schema)
    .ExecuteScalar<double>();

 IDataReader reader = new
    Select(Aggregate.GroupBy("ProductID"), Aggregate.Avg("UnitPrice"))
    .From("Order Details")
    .Where(Aggregate.Avg("UnitPrice"))
    .IsGreaterThan(50)
    .ExecuteReader();
...