1

我最近完成了 SQLmodel 文档,但它没有告诉我如何使用 group_by 命令。我正在尝试以下操作:

SELECT reader_status, count(book_id) 
FROM readerbook
WHERE reader_id=1
GROUP BY reader_id, reader_status

在 SQLmodel 代码中使用。

statement = select(
    ReaderBook.reader_status, func.count(ReaderBook.book_id).label("count")
)

这是我的代码。如何使用 group_by "reader_id" 条件?

4

1 回答 1

1

假设readerBook是表的变量,即

readerBook = Table(
   ...
)

然后你可以试试下面的。

statement = select([
    readerBook.c.reader_status, func.count(readerBook.c.book_id).label("count")
])
.select_from(readerBook)
.group_by(readerBook.c.reader_id)
于 2021-10-16T14:44:32.220 回答