Je dois rejoindre deux entités dans cinq colonnes et je dois regrouper chaque colonne dans la sélection d’un compte sur chaque groupe par. Bien que ce soit un gâteau pour moi dans SQL, je suis désespérément confus avec chaque exemple que je peux trouver pour Linq.
J’ai trouvé les deux questions suivantes (C # Linq Group par plusieurs colonnes et groupe par plusieurs colonnes Les colonnes) Ils sont similaires à ceux de la mienne, mais je suis toujours confus sur la façon de faire cela. Voici mon énoncé SQL:
SELECT o.org_hq_name, o.org_command_name, o.org_region_name, o.org_installation_name, o.org_site_name, o.org_subsite_name, o.org_hq_id, o.org_command_id, o.org_region_id, o.org_installation_id, o.org_site_id, count(org_site_id) AS countFROM organization o, asset aWHERE o.org_hq_id = hq_org_idAND o.org_command_id = a.command_org_idAND o.org_region_id = a.region_org_idAND o.org_installation_id = a.installation_org_idAND o.org_site_id = a.site_org_idGROUP BY o.org_hq_name, o.org_command_name, o.org_region_name, o.org_installation_name, o.org_site_name, o.org_subsite_name, o.org_hq_id, o.org_command_id, o.org_region_id, o.org_installation_id, o.org_site_id
J’ai un abonnement ci-dessous:
var join1 = from m in context.asset join o in context.organization on new {hqID = a.hq_org_id, commandID = a.command_org_id, regionID = a.region_org_id, installationID = a.installation_org_id, siteID = a.site_org_id} equals new {hqID = o.hq_id, commandID = o.command_id, regionID = o.region_id, installationID = o.installation_id, siteID = o.site_id} select new { hqID = o.hq_id, commandID = o.command_id, regionID = o.region_id, installationID = o.installation_id, siteID = o.site_id //hqId = o.count(org_site_id) AS count };
J’ai un groupe ci-dessous:
var group1 = from a in context.asset group a by new { a.hq_org_id, a.command_org_id, a.region_org_id, a.installation_org_id, a.site_org_id // I am not sure how to get the count } into asset select new { // I cannot figure out how to join }
Aidez-moi avec le groupe par syntaxe avec une jointure sur deux tables, mais dans plusieurs colonnes des deux tables et obtenez le Compte de chaque groupe par.