rust 统计记录海况

im9ewurl  于 2022-11-12  发布在  其他
关注(0)|答案(2)|浏览(135)

我正在寻找一种方法来计算查询所找到的所有记录。我可以看到有一个计数函数,但我不完全确定如何处理输出以得到一个数字类型。
我有类似的东西

entity::table_name::Entity::find().count(&db);

返回一个Pin<Box<dyn Future + Send<Output = Result<usize, DbErr>>>>
我只是想得到一个数字。我的思路对吗?最简单的方法是什么?

gcxthw6b

gcxthw6b1#

还有另一种方法:


# [derive(Copy, Clone, Debug, EnumIter, DeriveColumn)]

enum Counter {
    Count,
}

entity::table_name::Entity::find()
    .select_only()
    .column_as(Expr::col(entity::table_name::Column::Id).count(), "count")
    .into_values::<_, Counter>()
    .one(&db)
    .await

不过,这看起来有点复杂

aydmsdu9

aydmsdu92#

将计数作为一个大小来获取就像下面这样简单

entity::entity_name::Entity::find().count(&db).await.unwrap();

其中,entity_name是表/实体的名称。

相关问题