Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Weź i pogrupuj według w EntityFramework

Oto przykład tego, czego moim zdaniem szukasz. To zapytanie zwróci 3 najlepszych uczniów według GPA w każdej klasie:

using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Ef6Test
{

    class Student
    {
        public int Id { get; set; }
        public string Name { get; set; }

        public string Class{ get; set; }

        public decimal GPA { get; set; }
    }

    class Db : DbContext
    {
        public DbSet<Student> Students { get; set; }
    }
    class Program
    {
        static void Main(string[] args)
        {
            using (var db = new Db())
            {
                var q = db.Students
                         .GroupBy(s => s.Class)
                         .SelectMany(g => g.OrderByDescending(s => s.GPA).Take(3));

                Console.WriteLine(q.ToString());

                Console.ReadKey();
            }

        }
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - Zmień wartość pola po X minutach bezczynności

  2. Zbyt długie dane dla kolumny w Django na MySQL

  3. Używanie Pythona do uzyskiwania dostępu do SQL ze zmienną nazwą kolumny

  4. Usuwanie rekordów starszych niż miesiąc/30 dni

  5. Jak ustawić prawidłową strefę czasową MySQL JDBC w konfiguracji Spring Boot?