Monday, 1 September 2014

Using Group by in Entity Framework

we have emp table  and department table

EmpID    EmpName    salary
1    Mukesh                 3000.00
2    Rakesh                  3000.00
3    Raghav                  3000.00
4    Sunil                     3000.00
5    radhika                 3000.00
6    gajraj singh          3000.00
7    akshay                  3000.00
8    anuradha             3000.00
9    hari                     3000.00
10    dee                    3000.00
11    dee                    3000.00
12    dee                   3000.00
13    ajay ml            3000.00
14    sudama           3000.00
15    raju                3000.00
16    iti                  3000.00
17    ravi               3000.00 
==========================================================
department


Depid    Depname    Address1    City    EmpID
1    IT    B/1 new delhi    delhi    4
2    Software    Mamura    Noida    2
3    Software    sector 15    Noida    3
4    Software    shuklaganj    Kanpur    1
5    Medical    Babina    jhansi    7
6    Railway    Babina    Jhansi    8
7    Railway    Babina    Jhansi    9
8    Railway    Babina    Jhansi    10
9    Railway    Babina    Jhansi    11
10    Railway    Babina    Jhansi    12
11    Railway    Babina    Jhansi    13
12    Railway    Babina    Jhansi    14
13    Railway    Babina    Jhansi    15
14    Railway    Babina    Jhansi    16
15    Railway    Babina    Jhansi    17


==================================================================

CountryEntities obj = new CountryEntities();
            var datalist = (from s in obj.Employees
                            join sl in obj.Departments on s.EmpID equals sl.EmpID
                            group s by new { s.EmpName, sl.Depname } into g

                            select new { department = g.Key.Depname, empName = g.Key.EmpName, totalsalary = g.Sum(P => P.salary) });

            GridView1.DataSource = datalist;
            GridView1.DataBind();
=================================================================
output
here output will come on department and name basis


departmentempNametotalsalary
ITSunil3000.00
Medicalakshay3000.00
Railwayajay ml3000.00
Railwayanuradha3000.00
Railwaydee9000.00
Railwayhari3000.00
Railwayiti3000.00
Railwayraju3000.00
Railwayravi3000.00
Railwaysudama3000.00
SoftwareMukesh3000.00
SoftwareRaghav3000.00
SoftwareRakesh3000.00




No comments:

Post a Comment