我正在寻找一种方法来计算查询所找到的所有记录。我可以看到有一个计数函数,但我不完全确定如何处理输出以得到一个数字类型。我有类似的东西
entity::table_name::Entity::find().count(&db);
返回一个Pin<Box<dyn Future + Send<Output = Result<usize, DbErr>>>>我只是想得到一个数字。我的思路对吗?最简单的方法是什么?
Pin<Box<dyn Future + Send<Output = Result<usize, DbErr>>>>
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
不过,这看起来有点复杂
aydmsdu92#
将计数作为一个大小来获取就像下面这样简单
entity::entity_name::Entity::find().count(&db).await.unwrap();
其中,entity_name是表/实体的名称。
2条答案
按热度按时间gcxthw6b1#
还有另一种方法:
不过,这看起来有点复杂
aydmsdu92#
将计数作为一个大小来获取就像下面这样简单
其中,entity_name是表/实体的名称。