を使用して一つのテーブル上でグループの後のテーブルをJoning:は、私は2つのテーブルを持ってT SQL/LINQ
CREATE TABLE [dbo].[Employee_Reason](
[Id] [int] IDENTITY(1,1) NOT NULL,
[IdEmployee] [int] NOT NULL,
[IdReason] [int] NOT NULL,
[AverageServiceTime] [time](0) NULL,
[Skillset] [bit] NOT NULL,
CONSTRAINT [PK_Employee_Reason] PRIMARY KEY CLUSTERED ([Id] ASC) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[Employee_Reason] WITH CHECK ADD CONSTRAINT [FK_Employee_Reason_Employee] FOREIGN KEY([IdEmployee])
REFERENCES [dbo].[Employee] ([Id])
GO
ここで、th電子の従業員テーブルは次のようになります。
CREATE TABLE [dbo].[Employee](
[Id] [int] IDENTITY(1,1) NOT NULL,
[EmployeeId] [int] NOT NULL,
[FirstName] [nvarchar](20) NOT NULL,
[LastName] [nvarchar](40) NOT NULL,
[IdLocation] [int] NOT NULL,
[IdStatus] [int] NOT NULL,
[UserId] [nvarchar](450) NOT NULL,
[IsArchived] [bit] NULL,
[IdAssignedLocation] [int] NOT NULL,
[IdQueue] [int] NOT NULL,
[IdPosition] [int] NOT NULL,
CONSTRAINT [PK_Employee] PRIMARY KEY CLUSTERED ([Id] ASC) ON [PRIMARY]
) ON [PRIMARY]
私はidreason
によってグループemployee_reason
にしたいし、従業員と、その後join
このようなEmployee_Reason.idemployee
とemployee.id
を使用して:
List<SelfServeReason> skillsetReasons =
from reason in db.EmployeeReason
group reason by IdReason into reasonGroup
join employee in scheduleEmployees on reasonGroup.IdEmployee equals employee.Id
select new skillsetReason
{
id = reasonGroup.Id,
description = reasonGroup.Description,
estimatedWaitTime = min(employee.NextAvailableTime) – ConvertToCST(DateTime.Now)
};
私はこのようにそれを書かれています
select MAX(er.Id)
from Employee_Reason er join Employee e on er.IdEmployee = e.id
group by er.IdReason
グループ化の方法がわからないemployee_reasons
とその後join
このグループidempoyee
で始まります。
linqは正しくありません。誰かが正しいlinqを提案することができれば、linqは擬似コードになります。
解決策をお聞かせください。何がしたいことは、あなたが行うことができ、そのLINQクエリにSQLクエリsimmilarある場合
グループ化する欄を指定しましたが、選択する列は指定しませんでした。そのlinqクエリにあるものと同じですか? –
@GabrielRainhaはいlinq –
でも同じものがありますが、linqは正しくありません。誰かが正しいlinqを提案することができれば擬似コードになります。 –