如何使用组将SQL查询转换为LINQ并具有?

时间:2015-06-23 20:28:50

标签: sql sql-server linq sum

我可以在SQL Server Management Studio中正确执行查询,但仅出于测试目的,我需要将其转换为C#和Linq。我已经看过一些例子,但没有一个可以工作,选择失败。

我正在尝试选择一个Id,它是由另一个表中的值的SUM产生的,多对多表位于中间,可能我做错了连接或者至少它是我认为的,有人可以帮助我吗?

这很好..

var query =
            from ti in bd.TotalIngresos
            join ip in bd.IngresosParciales on ti.IngresosParciales equals ip.TotalIngresos
            group ti by ti.IngresosParciales into x
            where x.Sum(x => x.monto) == total
            select x.Key; // <---??

这就是我正在尝试的事情......

form.$setPristine(true);
form.$setUntouched(true);

// iterate over all from properties
angular.forEach(form, function(ctrl, name) {
  // ignore angular fields and functions
  if (name.indexOf('$') != 0) {
    // iterate over all $errors for each field        
    angular.forEach(ctrl.$error, function(value, name) {
      // reset validity
      ctrl.$setValidity(name, null);
    });
  }
});
$scope.resetCount++; 

1 个答案:

答案 0 :(得分:0)

没有办法在本地测试它,但这有用吗?基本上我们需要将分组变平以选择一个项目...忘了提...如果你变平了,你将失去分组......

var query =
        (
            from ti in bd.TotalIngresos
            join ip in bd.IngresosParciales on ti.IngresosParciales equals ip.TotalIngresos
            group ti by ti.IngresosParciales into x
            where x.Sum(x => x.monto) == total
            select x
        ).SelectMany (x => x)
        .Select (x => x.id_totalingresos);