sql >> Database teknologi >  >> RDS >> Mysql

Sådan får du seneste rekord for hver gruppe ved hjælp af Entity Framework og MySQL inklusive relateret enhed

Du behøver ikke SqlQuery konstruer for at udføre rækkefølgen før grupperingen:

var refGroupQuery = from m in dbContext.Messages
     group m by m.receiver_id into refGroup
     let firstItem = refGroup.OrderByDescending(x => x.created_at)
                             .FirstOrDefault()
     select new MessageDTO { 
                              id = firstItem.id, 
                              content = firstItem.content,
                              sender_email = firstItem.sender.email
                           };

Dette gør det samme, men det oversætter hele sætningen til SQL, hvilket har to fordele

  • sender er ikke doven indlæst for hver besked
  • sender.email går ikke ned, når sender er null, fordi der i SQL ikke er nogen nul objektreference. Hele udtrykket (sender.email ) returnerer bare null.



  1. Parsing af et separat PHP-array i Javascript

  2. PG-fejl kunne ikke oprette forbindelse til server:Forbindelse nægtet Kører serveren på port 5432?

  3. Hvordan kan du tvinge en funktion i en where-klausul til at udføre én gang i oracle?

  4. procedure i mysql