Mysql
 sql >> база данни >  >> RDS >> Mysql

LINQ към SQL множество таблици, ляво външно присъединяване

Ето как се изпълняват левите външни съединения с LINQ. Трябва да използвате GroupJoin (join...into синтаксис):

from d in context.dc_tpatient_bookingd
join bookingm in context.dc_tpatient_bookingm
     on d.bookingid equals bookingm.bookingid into bookingmGroup
from m in bookingmGroup.DefaultIfEmpty()
join patient in dc_tpatient
     on m.prid equals patient.prid into patientGroup
from p in patientGroup.DefaultIfEmpty()
// ... other joins here
where d.processid == 6 &&
      ((m.branchId == 1 && d.DestinationBranchID == 0) ||
       (d.DestinationBranchID == 1 && d.sendstatus == "R"))
// ... other conditions here
orderby d.priority descending, m.bookingid
select new {
   d.bookingid,
   d.labid,
   d.processid,
   p.prid,
   p.prno,
   m.bookingid // need for grouping
} into x
group x by x.bookingid into g
select g

Тази заявка обединява три таблици. Можете да се присъедините към останалите маси по същия начин.



  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 IN оператор върху (голям?) брой стойности

  2. Бавност, установена при избор и кодиране на изображение на база 64 от базата данни

  3. MYSQL ПОРЪЧКА ПО СЛУЧАЙ Проблем

  4. Първо подреждане по конкретна стойност на полето

  5. Изсипете mysql база данни в резервно копие на обикновен текст (CSV) от командния ред