私はLINQ-to-SQLを次のSQL用に作成する方法を理解しようとしています。どんな助けもありがとう。応答のC#コードが優先されます。また、簡潔にするために、PKey以外のインデックスは示されていません。LINQ to SQL - グループ化する
テーブルスキーマ:
CREATE TABLE [dbo].[FileHashes](
[ID] [uniqueidentifier] NOT NULL,
[FileName] [nvarchar](255) NULL,
[FileSize] [bigint] NULL,
[FileDirectory] [nvarchar](255) NULL,
[SHA-1] [nchar](40) NULL,
[MD5] [nchar](32) NULL,
[CRC32] [nchar](8) NULL,
CONSTRAINT [PK_FileHashes] PRIMARY KEY CLUSTERED
(
[ID] ASC
)) ON {PRIMARY]
T-SQL:
select COUNT(ID) as DupCount, FileName from FileHashes
group by [SHA-1], FileName, FileSize
having COUNT(ID) > 1
order by DupCount desc, FileSize desc
私はまだないが、まだしかし、近づいこれで取得しています:事前に
from f in FileHashes
group f by new { f.SHA_1, f.FileName, f.FileSize } into g
orderby g.Key.FileSize descending
where g.Count() > 1
select new { g.Key.SHA_1, g.Key.FileName, g.Key.FileSize }
おかげで、 - エド
これをSQLとしてそのまま残し、それをL2Sに変換しないことができます。 – Kredns
これでL2Sをやっているときに何が起こるのですか? – klabranche