Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Lấy (giới hạn) danh sách bên trong Groupby trong Entity Framework

Nguyên nhân là do nhà cung cấp EF cho MySQL hoặc bản thân máy chủ không thể dịch linq này sang SQL, vì vậy trước tiên bạn nên lấy dữ liệu từ máy chủ và chỉ sau đó nhóm nó với Take(2) :

var test = unitOfWork.ChatMensagemRepository.GetAll()
              .Where(x => x.PessoaCodigoPessoa == codigoRemetente)
              //this section is added
              .Select(x => new 
              {
                  x.ChatConversaCodigoChatConversa,
                  x.prop1,//specify only columns, which you need for below code with Take
                  x.prop2
              }).ToList()
              //end of section
              .GroupBy(x => x.ChatConversaCodigoChatConversa)
              .Select(group => new
              {
                  codigoChat = group.Key,
                  list = group.Take(2).Select(mensagem => new
                  {
                     mensagem.prop1, 
                     mensagem.prop2
                  }).ToList()
              }).ToList();



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để THAM GIA TRÁI với nhiều hơn 2 bảng?

  2. Hàm gọi MySqlCommand

  3. 2 cách liệt kê tất cả các hàm trong MySQL

  4. Khoảng trắng trong trường cơ sở dữ liệu không bị xóa bởi trim ()

  5. kiểm tra xem kết quả truy vấn có hàng trống mysqli không