Wie würden Sie genau diese SQL-Abfrage mit dem neuen Linq to NHibernate Provider (3.x)Count Distinct - Inner Join - Gruppe von/Mit dem neuen Linq to NHibernate Provider
SELECT Post.Title, COUNT(DISTINCT Comment.UserId)
FROM Post
INNER JOIN Comment ON Post.Id = Comment.PostId
GROUP BY Post.Title
schreiben
Hier einige SQL, wenn Sie einige Tests
DECLARE @Post Table(Id int identity(1,1), Title varchar(200))
DECLARE @Comment Table(Id int identity(1,1), PostId int, Comment varchar(200), UserId int)
DECLARE @PostId int
INSERT INTO @Post(Title)
VALUES ('Test')
SELECT @PostId = SCOPE_IDENTITY()
INSERT INTO @Comment(PostId, Comment, UserId)
VALUES (@PostId, 'Test Comment', 1)
INSERT INTO @Comment(PostId, Comment, UserId)
VALUES (@PostId, 'Test Comment 2', 1)
INSERT INTO @Comment(PostId, Comment, UserId)
VALUES (@PostId, 'Test Comment 3', 2)
INSERT INTO @Post(Title)
VALUES ('Test 2')
SELECT @PostId = SCOPE_IDENTITY()
INSERT INTO @Comment(PostId, Comment, UserId)
VALUES (@PostId, 'Test Comment', 1)
INSERT INTO @Comment(PostId, Comment, UserId)
VALUES (@PostId, 'Test Comment 2', 2)
INSERT INTO @Comment(PostId, Comment, UserId)
VALUES (@PostId, 'Test Comment 3', 3)
SELECT Post.Title, COUNT(DISTINCT Comment.UserId)
FROM @Post Post
INNER JOIN @Comment Comment ON Post.Id = Comment.PostId
GROUP BY Post.Title
Wie weit bist du gekommen? StackOverflow hilft Ihnen bei Problemen, nicht für Ihre Arbeit. Nichts für ungut, aber ein bisschen mehr Kontext würde in diesem Fall helfen;) –
Angesichts der Tatsache, dass die Frage sehr einfach ist und dass ich mir die Zeit genommen habe, um den gesamten SQL zu produzieren, denke ich, diese Frage verdient diese Art von Kommentar nicht. Ich habe gerade angefangen, NHibernate zu benutzen und ich weiß nicht einmal, wo ich anfangen soll. Ich dachte, diese Frage wäre für jeden NHibernate-Guru einfach ... – W3Max
Sie könnten versuchen, auf der nhusers-Gruppe http://groups.google.com/group/nhusers zu veröffentlichen, welche Version von nh verwenden Sie? –