簡體   English   中英

Esqueleto內部選擇計數

[英]Esqueleto count inside select

我有以下Entities

Group
  name Text

GroupUser
  user UserId
  group GroupId

我想做這樣的查詢:

select g.* /* Everything from g */
     , count(gu.id) groupUsersCount 
  from Group g
  left outer join GroupUser gu on gu.groupId = g.id
group by g.id

可以用Esqueleto完成嗎?

用於esqueleto文檔groupBy包含如何使用它很好的例子。

此外,通過閱讀“ 入門”部分,您將看到幾個查詢示例,包括等同於table.*的查詢:

do people <- select $
             from $ \person -> do
             return person

將兩者放在一起意味着這樣的事情應該起作用:

select $ from \(g `LeftOuterJoin` gh) -> do
  on (gu ^. GroupId ==. g ^. Id)
  groupBy (g ^. Id)
  return (g, countRows)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM